随笔分类 -  Kruskal 重构树

摘要:洛谷传送门 考虑 d=2 的部分分。相当于只用 2 次操作把 T 变成一条链。 不妨设最后变成的是一个 1n 的链,如果不是可以把点重编号。 第一次操作考虑以 n 为根,每次取每个儿子的子树中的最大值为新的根并和原来的根连边,这样会将整棵树具有 阅读全文
posted @ 2024-04-10 16:38 zltzlt 阅读(42) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 CF 传送门 首先需要知道的一个 trick:判断一个点是否在一个闭合回路内部,从这个点向任意方向引一条射线,若不考虑相切,那么和回路的交点为奇数时这个点在回路内部,否则在外部。 那么这题要判断一个回路是否包含全部的 island,可以找到任意一个 island 向右引一条射线。 给每个 阅读全文
posted @ 2024-01-14 15:08 zltzlt 阅读(51) 评论(0) 推荐(0) 编辑
摘要:[洛谷传送门](https://www.luogu.com.cn/problem/CF825G "洛谷传送门") [CF 传送门](https://codeforces.com/problemset/problem/825/G "CF 传送门") 模拟赛赛时做法。 看到查询路径点权最小值,想到建重构 阅读全文
posted @ 2023-08-26 15:38 zltzlt 阅读(10) 评论(0) 推荐(0) 编辑
摘要:[洛谷传送门](https://www.luogu.com.cn/problem/CF1648E "洛谷传送门") [CF 传送门](https://codeforces.com/problemset/problem/1648/E "CF 传送门") 被一道题创了三天![](//图.tk/0) 我们 阅读全文
posted @ 2023-07-31 10:18 zltzlt 阅读(27) 评论(0) 推荐(0) 编辑
摘要:[洛谷传送门](https://www.luogu.com.cn/problem/AT_abc235_h "洛谷传送门") [AtCoder 传送门](https://atcoder.jp/contests/abc235/tasks/abc235_h "AtCoder 传送门") 为啥洛谷唯一一篇题 阅读全文
posted @ 2023-06-20 22:16 zltzlt 阅读(18) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 AtCoder 传送门 基础图论。 考虑快速求出 d(s,t),那么边权要 +1 的边仅当边权等于 d(s,t) 时答案可能为 1。求 d(s,t) 可以建出 Kruskal 重构树,查两点 LCA 点权得出。 考虑把询问离线,把相同的 $d( 阅读全文
posted @ 2023-05-16 10:43 zltzlt 阅读(43) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 AtCoder 传送门 非常妙的 Kruskal 重构树。 倒序考虑,相当于每次经过一个点必须至少有 max(0,aubu) 元,然后获得 bu 元,并且之后经过这个点都不会再获得钱。令 ci=max(0,aubu),考虑枚举终点 u阅读全文
posted @ 2023-01-16 10:06 zltzlt 阅读(23) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 思路 考虑按边权从小到大和从大到小排序,建两棵 Kruskal 重构树。根据 minmax 倍增到相应的祖先结点,问题就转化成了两棵子树交。记 a,b 分别为两棵树的 dfs 序,则问题为满足 $i \in [l_1,r_ 阅读全文
posted @ 2022-07-28 21:16 zltzlt 阅读(34) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 CF 传送门 思路 路径最值想到 Kruskal 重构树,则求最大权值就是求 LCA 的点权。 多个点的 LCA 就是 dfs 序最小和 dfs 序最大的点的 $\mathrm{ 阅读全文
posted @ 2022-07-28 21:08 zltzlt 阅读(29) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 CF 传送门 思路 考虑离线,按时间倒序进行操作,删边变成加边。 然而若按时间倒序进行操作,就不知道哪些点已经 pu=0 了。. 可以按加边的顺序建出 Kruskal 重构树。则可以倍增找到在 t 时刻连通的祖先,它的所有叶子子结点即为在 t 时刻 阅读全文
posted @ 2022-07-28 21:04 zltzlt 阅读(31) 评论(0) 推荐(0) 编辑
摘要:Kruskal 重构树 回忆 Kruskal 算法求最小生成树的过程,将所有边按边权排序,然后从小到大合并。若两个点不直接合并,而是新建一个虚点 z,连 zxzy,就形成了一棵 Kruskal 重构树 。 $\math 阅读全文
posted @ 2022-07-28 20:55 zltzlt 阅读(40) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 CF 传送门 思路 考虑将每条边的编号作为边权,然后建 Kruskal 重构树。 那么每个询问的答案即为 LCA(l,l+1,...,r1,r)。 有一个经典套路,就是多个点的 LCA 就是 dfs 阅读全文
posted @ 2022-07-28 20:55 zltzlt 阅读(30) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示