博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
2370 小机房的树
阅读量:4604 次
发布时间:2019-06-09

本文共 1767 字,大约阅读时间需要 5 分钟。

题目描述 Description

小机房有棵焕狗种的树,树上有N个节点,节点标号为0到N-1,有两只虫子名叫飘狗和大吉狗,分居在两个不同的节点上。有一天,他们想爬到一个节点上去搞基,但是作为两只虫子,他们不想花费太多精力。已知从某个节点爬到其父亲节点要花费 c 的能量(从父亲节点爬到此节点也相同),他们想找出一条花费精力最短的路,以使得搞基的时候精力旺盛,他们找到你要你设计一个程序来找到这条路,要求你告诉他们最少需要花费多少精力

输入描述 Input Description
第一行一个n,接下来n-1行每一行有三个整数u,v, c 。表示节点 u 爬到节点 v 需要花费 c 的精力。 第n+1行有一个整数m表示有m次询问。接下来m行每一行有两个整数 u ,v 表示两只虫子所在的节点
输出描述 Output Description

一共有m行,每一行一个整数,表示对于该次询问所得出的最短距离。

样例输入 Sample Input

3

1 0 1

2 0 1

3

1 0

2 0

1 2

样例输出 Sample Output

1

1

2

数据范围及提示 Data Size & Hint

1<=n<=50000, 1<=m<=75000, 0<=c<=1000

题解:调了一下午。伤心透顶。然后HWH大佬从我身边经过,一眼指出我最后输出的时候dis没有乘以2。QAQ。我真是一个辣鸡。

 

#include
#include
#include
#include
#define N 50010using namespace std;int n,m,num(0);int head[N],deep[N],dis[N]={
0};int f[N][25];struct node{ int v,t,pre;}e[2*N];void add(int from,int to,int ti){ e[++num].v=to; e[num].t=ti; e[num].pre=head[from]; head[from]=num;}void dfs(int ki,int dep)//查找每个点的深度和与根节点的距离 { deep[ki]=dep; for (int i=head[ki];i;i=e[i].pre) { int u=e[i].v; if (!deep[u]&&u) { f[u][0]=ki; dis[u]=dis[ki]+e[i].t; dfs(u,dep+1); } }}void get_father()//倍增找父节点 { for (int j=1;j<=21;j++) for (int i=0;i
=0;j--)//将深度较深的点拉到深度比较浅的点的那一层 if (deep[f[x][j]]>=deep[y]) x=f[x][j]; for (int j=21;j>=0;j--)//找最近公共祖先 if (f[x][j]!=f[y][j]) { x=f[x][j]; y=f[y][j]; } if (x==y) return x;//两个点在一条链上 return f[x][0];}int main(){ scanf("%d",&n); for (int i=1,u,v,c;i
lca

 

转载于:https://www.cnblogs.com/sjymj/p/6035267.html

你可能感兴趣的文章
iOS常用第三方库 -转
查看>>
Android布局学习
查看>>
实时通讯与非实时通讯
查看>>
jQuery中事件绑定与解绑
查看>>
js原生Ajax的封装与使用
查看>>
周总结6
查看>>
PostgreSQL 务实应用(二/5)插入冲突
查看>>
一种公众号回复关键词机制
查看>>
java多线程入门学习(一)
查看>>
基于 Web 的 Go 语言 IDE - Wide 1.1.0 公布!
查看>>
nyist oj 138 找球号(二)(hash 表+位运算)
查看>>
Movidius软件手册阅读 2017-09-04
查看>>
ytu 1910:字符统计(水题)
查看>>
201671030110 姜佳宇 实验三作业互评与改进
查看>>
mysql-5.6.15 开启二进制文件
查看>>
python的沙盒环境--virtualenv
查看>>
软件自动化测试——入门、进阶与实战
查看>>
BZOJ1878 [SDOI2009]HH的项链 树状数组 或 莫队
查看>>
BZOJ3675 [Apio2014]序列分割 动态规划 斜率优化
查看>>
Django extend(继承)模板标签
查看>>