
ACM_LCA
文章平均质量分 84
逍遥丶綦
这个作者很懒,什么都没留下…
展开
-
LCA+最小生成树 Codeforces609E Minimum spanning tree for each edge
传送门:点击打开链接 题意:给一个图,有m条边n个点,如果对于一个最小生成树中要求必须包括第i条边,那么最小生成树的权值总和最小是多少 思路:求出最小生成树,然后对于m条边相当于m次查询,每次查询的时候,相当于求出在最小生成树中(u,v)路径上的边权最大值,那么新添加了一条边,就要把这条最大值的边删掉。所以题目转换成了,求路径上边权最大值。可以用LCA来做,也可以用树链剖分来维护。原创 2015-12-20 20:45:43 · 1465 阅读 · 0 评论 -
倍增法LCA hdu2586 How far away ?
传送门:点击打开链接 题意:给你一棵树,每条边有权值,求两点之间的最短距离 思路:裸LCA。这里主要练习一下倍增法,感觉这种思路和代码实现很简单,而且能感觉实用性很大的,很值得学习 倍增法要理解对2的次方的枚举顺序 如果是要走固定步数,那么顺序枚举与i位与为1就行 如果是要求一个临界位置,那么要从大到小枚举 #include #include #include #include #原创 2015-12-08 20:46:08 · 1474 阅读 · 0 评论 -
离线LCA hdu2586 How far away ?
传送门:点击打开链接 题意:一棵树,告诉你两个点,求两个点之间的距离 思路:裸LCA。维护点到根节点的距离,那么u到根节点距离+v到根节点距离-lca(u,v)到根节点距离即可 离线LCA的思路很清晰,大概就是利用从下向上的并查集去维护节点。 #include #include #include #include #include #include #include #include #i原创 2015-10-21 15:10:58 · 716 阅读 · 0 评论