随笔分类 - 数据结构 -- 长链剖分
摘要:传送门 神仙题。。简单版本很好做,做法也很多。 加强版$n\leq 105$,显然之前的$O(n2)$的做法时间、空间复杂度都不能承受。 考虑维护以深度有关的$dp$: $f[i][j]$表示以$i$为根节点的子树中,深度为$j$的点有多少个。 显然这个很好维护,转移$\displaystyle f
阅读全文
摘要:传送门 显然每次只会取当前最大的长链。 那么每次直接将所有长链的权值扔到一个堆里面,最后取出$k$次即是最终答案。 写法上类似于树链剖分: /* * Author: heyuhhh * Created Time: 2020/6/11 9:49:25 */ #include <iostream> #i
阅读全文
摘要:传送门 长链剖分模板题。 因为转移跟深度有关,所以我们直接继承深度最大的儿子的信息,其余暴力转移即可。 继承不可能枚举,否则和直接转移复杂度无异,这里利用指针即可。 其余暴力转移根据长链的性质复杂度不超过$O(n)$。 代码如下: /* * Author: heyuhhh * Created Tim
阅读全文