随笔分类 - ACM_最近公共祖先(LCA)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2586 LCA模版题。 RMQ+LCA: 树链剖分的LCA:
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5266 题目就是让你求LCA,模版题。注意dfs会栈溢出,所以要扩栈,或者用bfs写。
阅读全文
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2874 题意是给你n个点,m条边(无向),q个询问。接下来m行,每行两个点一个边权,而且这个图不能有环路。然后接下来q行,每行给你两个点,问你这两个点的最短距离是多少,要是不相连,则输出一串英文。 首先想
阅读全文
摘要:两个最近的点u和v的最近的公共的祖先称为最近公共祖先(LCA)。普通的LCA算法,每算一次LCA的时间复杂度为线性o(n); 这里讲LCA + 二分的方法。首先对于任意的节点v,利用其父节点的信息,可以通过par2[v]=par[par[v]]得到向上走两步的节点。依此信息可以通过par4[v]=p
阅读全文