传送门 题意:给你一棵树,询问u到v路径上的第k大 题解:从u到v的路径能想到,u到根+v到根-lca(u,v)到根-fa[lca(u,v)]到根剩下的就是u到v之间的路径。因此只要离散化一下,每次dfs的时候处理倍增lca和主席树更新操作就可以 ...
分类:
其他好文 时间:
2018-05-27 23:42:08
阅读次数:
198
1.倍增LCA 通过记录f[i][j],每个点第2的j次方个父亲的编号,来找LCA 代码中,先要处理出每个点的深度,和father(f[i][0]),然后倍增求出所有的祖先。 work的时候,利用二进制拆分的思想,先把两个节点向上翻到同一个深度,再同时向上翻,直到到了lca的儿子位置,再返回f[x] ...
分类:
其他好文 时间:
2018-05-13 13:45:16
阅读次数:
164
传送门 分析: 次小生成树的求法有两种,最大众的一种是通过倍增LCA找环中最大边求解,而这里我介绍一种神奇的O(nlogn) 做法: 我们先建立最小生成树,因为我们用kruskal求解是边的大小已经按升序排列,所以相同情况下,先枚举的边一定更优,所以我们每一次暴力的找非树边所连两点的LCA,并在寻找 ...
分类:
其他好文 时间:
2018-05-09 20:49:43
阅读次数:
163
4568: [Scoi2016]幸运数字 Description A 国共有 n 座城市,这些城市由 n-1 条道路相连,使得任意两座城市可以互达,且路径唯一。每座城市都有一个 幸运数字,以纪念碑的形式矗立在这座城市的正中心,作为城市的象征。一些旅行者希望游览 A 国。旅行者计划 乘飞机降落在 x ...
分类:
其他好文 时间:
2018-05-02 11:15:40
阅读次数:
190
题目: 给定N个节点的一棵树,有K次查询,每次查询a和b的最近公共祖先。 输入 第一行两个整数N(1 < N <= 105)、K(1 <= K <= 105) 第2~N行,每行两个整数a、b(1 <= a,b <= N),表示a是b的父亲。 第N+1~N+K+1行,每行两个整数a、b(1 <= a, ...
分类:
其他好文 时间:
2018-04-30 18:04:40
阅读次数:
137
【题意】给定n个点m条边的带边权无向连通图,对每条边求最大边权,满足其他边权不变的前提下图的任意最小生成树都经过它。n,m<=2*10^5,1<=wi<=10^9。 【算法】最小生成树+倍增LCA+并查集 【题解】首先求出图的一个最小生成树,则所有边分成树边和非树边。 对于非树边(u,v),假设u和 ...
分类:
其他好文 时间:
2018-03-08 02:45:44
阅读次数:
270
"洛谷题目传送门" %%%天平巨佬和山楠巨佬%%% "他们的题解" 思路分析 具体思路都在两位巨佬的题解中。这题做法挺多的,我就不对每个都详细讲了,泛泛而谈吧。 首先kruskal把最小生成树弄出来,因为要求次小生成树。至于为什么次小一定只在最小的基础上改变了一条边,我也不会证。。。。。。~~打表找 ...
分类:
其他好文 时间:
2018-02-08 13:46:04
阅读次数:
169
唉:-(动态点分治的思想真是复杂...... 先码住,再做几道题再来填坑 PS:接下来的Code因为用了倍增lca所以TLE一部分,但是懒得改成RMQ了...... Code: ...
分类:
其他好文 时间:
2018-02-07 14:39:15
阅读次数:
160
There are N cities in a country, and there is one and only one simple path between each pair of cities. A merchant has chosen some paths and wants to ...
分类:
其他好文 时间:
2017-12-24 22:52:58
阅读次数:
197
hdu 2586 How far away ?倍增LCA 题目链接 [http://acm.hdu.edu.cn/showproblem.php?pid=2586][03b3e532] 思路: 针对询问次数多的时候,采取倍增求取LCA,同时跟新距离数组 因为 $2^{16} 40000$ 所以所以表 ...
分类:
其他好文 时间:
2017-11-22 15:20:33
阅读次数:
138