![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
长链剖分
zhouyuheng2003
不要害怕落日的黑暗,因为明天的太阳还会照常升起
展开
-
长链剖分:O(nlogn)预处理O(1)求kth祖先
前言 一个长链剖分的小trick 问题 如题,数据范围大概10510^5105 思路 我们知道重链剖分是什么,即选择自己儿子中子树节点树最大的作为重儿子,其它儿子为轻儿子 而长链剖分则是选择儿子中子树深度最大的儿子为长儿子,其它为短儿子 这样进行树剖后就有一些很奇妙的性质,即:一个节点的kth祖先所在的链的链长大于k 我们考虑:对于每一条长度为xxx的链,我们记录链头的每个kth祖先(k∈[1,x...原创 2019-04-01 08:41:30 · 347 阅读 · 0 评论 -
Dominant Indices(CF 1009 F)
前言 记录一下长链剖分的小技巧 题目相关 链接 题目大意 一棵nnn个节点的树,定义fi,jf_{i,j}fi,j为与iii号点距离为jjj的节点数量,对于每个iii求出一个最小的jjj满足fi,jf_{i,j}fi,j是所有jjj的取值中最大的 数据范围 n≤106n\le10^6n≤106 题解 直接长链剖分即可,我们发现“重”儿子继承的时候是直接最前面加个1,所以可O(1)\mathca...原创 2019-04-02 17:53:39 · 212 阅读 · 0 评论