树形问题
文章平均质量分 90
树形问题
init1064573673
这个作者很懒,什么都没留下…
展开
-
[BJWC2010] 严格次小生成树
题面 严格次小生成树 题解 小蓝书 + 我自己的补充 做法 题意很好理解吧。 设最小生成树的边权之和为 sumsumsum。 我们要找严格次小生成树,就是要找到这样的一条非最小生成树上的边,满足: 将最小生成树上的某条边替换成这条边后,树依然联通。 这条边与被替换边的权值之差最小,且大于 000。 所以我们进行如下操作: 选择一条非最小生成树上的边 (x,y,z)(x,y,z)(x,y,z)。 将它加入树中,显然会形成一个环。 由 KruskalKruskalKruskal 的证明过程我们可以得到,z原创 2021-05-26 21:47:17 · 92 阅读 · 0 评论 -
[LNOI2014] LCA
题面 LCA 题解 题意很好理解 首先暴力的方法肯定是直接枚举求两个点的 LCALCALCA 的深度,复杂度是 O(mnlogn)O(mnlogn)O(mnlogn)。 考虑对暴力的优化,用 tarjantarjantarjan 离线求,然后 O(1)O(1)O(1) 查。但是时空间都不允许。 ...原创 2021-05-25 18:12:34 · 89 阅读 · 0 评论 -
[NOIP2015 提高组] 运输计划 lca 正确做法
题面 运输计划 题解 因为在写树剖的时候写崩了,所以这里提供一个 lcalcalca 的做法。 虽然有人说 lcalcalca 会被卡,但是我觉得用 tarjantarjantarjan 写出来复杂度也不假。(复杂度分析在下文) 前言 读完题不难发现,其实我们要清空权值的边就是在清空它之后,能把最长的路径降到最小。最大的最小我们想到了什么?自然而然就能稳一波二分答案。所以就可以我们二分在清空后最长的路径的长度。 二分答案的具体步骤 于是现在我们就需要写一个 checkcheckcheck 函数来判断答案是否原创 2021-05-12 21:51:56 · 78 阅读 · 0 评论