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