![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LCA
文章平均质量分 80
wjw1340
这个作者很懒,什么都没留下…
展开
-
HDU6162 Ch’s gift【LCA】
题意:给定一棵树,求两个点之间路径上的点权和,点权在一定范围内才有效,否则为0思路:开始T了一发双向BFS,后来想到有个算法叫LCA,可惜没学过,现场学,还用错一个模板,用的是二分搜索找LCA的模板。我是每次加上新到的点的权(范围内),二分这个,更新的点,不一定是路径上的。应该用一步一步往上走的模板,赛后才想到,为时已晚。每个点有一个深度,找两个点的LCA时,大家先走到一个深度,再原创 2017-08-22 19:23:22 · 749 阅读 · 1 评论 -
HDU2874 Connections between cities【LCA】
题意:求两点间的距离,可能不连通思路:连不连通,用并查集解决。不连通,我直接给每个连通集建了一个树状数组,不用想T了。其实只要建个虚根,把每个连通集的一个点连过去就行了,真是奇妙。#include#include#include#include#include#include#include#include#include#include#include原创 2017-08-28 15:12:14 · 239 阅读 · 0 评论 -
HDU3830 Checkers【LCA】
题意:三个数字,每个数字可以以一个数字为中心,翻转到另一边(只能翻过一个数字),给你两个三元组,问一个变成另一个最少需要几步思路:三个数字,中间的往两边翻的话,边上两个数字,相互交替,无穷无尽。如果,边上的往中间翻的话,总会结束。结束的时候就是它的根。那我们,找到它们的根,根相同,去找它们的步数,可能没走到根,它们就一样了。先让它们走到同一深度,再二分,mid步都相同,r = mid;原创 2017-08-28 19:49:20 · 527 阅读 · 0 评论 -
POJ2763 Housewife Wind【LCA】
题意:给一棵树,有边权。两种查询,1.当前位置到y的距离 2.修改某条边思路:LCA + 树状数组。按从根dfs访问的顺序把图转化为链,这样就能和树状数组结合了。记录下顶点序列vs和对应的深度depth。对于每个定点记录其首次出现的位置为id。这样求lca时便可,求id[u] 到 id[v]之间depth的最小值(线段树、RMQ),对应的顶点就是lca了。树状数组方面,每次按照走过的原创 2017-08-25 10:07:20 · 242 阅读 · 0 评论