随笔分类 - 图论_最近公共祖先
摘要:hdu 2586 How far away ?倍增LCA 题目链接 [http://acm.hdu.edu.cn/showproblem.php?pid=2586][03b3e532] 思路: 针对询问次数多的时候,采取倍增求取LCA,同时跟新距离数组 因为 $2^{16} 40000$ 所以所以表
阅读全文
摘要:caioj 1237: 【最近公共祖先】树上任意两点的距离 倍增ST [题目链接:http://caioj.cn/problem.php?id=1237][6912da86] 思路: 针对询问次数多的时候,采取倍增求取LCA,同时跟新距离数组 因为 $2^{14} 10000$ 所以所以表示祖先的数
阅读全文
摘要:[题目链接:http://caioj.cn/problem.php?id=1236][40eebe4d] 代码:(时间复杂度:nlogn) c++ include include include include using namespace std; const int maxn = 100005
阅读全文
摘要:pku 1330 Nearest Common Ancestors 题目链接: [http://poj.org/problem?id=1330][b2878554] 题目大意: 给定一棵树的边关系,注意是有向边,因为这个WA一发。然后N个顶点给出了N 1有向边,求一对点之间的最近公共祖先 思路: 裸
阅读全文
摘要:[题目链接 : ZOJ Problem Set 3195][8a0ceafb] 题目大意: 求三点之间的最短距离 思路: 有了两点之间的最短距离求法,不难得出: 对于三个点我们两两之间求最短距离 得到 d1 d2 d3 那么最短距离就是 d = ( d1 + d2 + d3 ) / 2 要注意每个数
阅读全文
摘要:[题目链接:hadu 2586][47a20dc0] 题目大意: 城镇之间互相有道路(双向边),且只存在n 1条边,保证相互可达,求两点 之间的距离。 思路: 转化为LCA裸问题,只需要再一边寻找最近公共祖先的同时,跟 新当前点到根节点的距离dist即可,那么节点u,v之间的距离为 dist[u]+
阅读全文
摘要:[题目链接:LCA tarjan离线][3cef6188] 这道题目WA无数发,最后还是参考了大神的blog 谁会想到因为一个输入外挂WA呢 大概是我的挂是假挂吧...orz(其实加上外挂,速度提升很多) 用链式前向星保存边的关系,同时为了节省空间也用前向星保存询问 注意要双向建边,同时dfs是先标
阅读全文

浙公网安备 33010602011771号