树链剖分
zhouyuheng2003
不要害怕落日的黑暗,因为明天的太阳还会照常升起
展开
-
动态dp
前言这是今年NOIP前的坑了,当时由于感觉不太会考所以没先学然而NOIP考到了打出GG现在回来补一波题目先拖出模板题,从模板题认识动态dp的一种典型形式洛谷P4719 【模板】动态dp题意:给定一棵n个点的树,点带点权有m次操作,每次操作给定x,y,表示修改点x的权值为y你需要在每次操作之后求出这棵树的最大权独立集的权值大小数据范围:1≤n,m≤1051\le n,m\l...原创 2019-03-22 21:18:59 · 1384 阅读 · 0 评论 -
长链剖分:O(nlogn)预处理O(1)求kth祖先
前言一个长链剖分的小trick问题如题,数据范围大概10510^5105思路我们知道重链剖分是什么,即选择自己儿子中子树节点树最大的作为重儿子,其它儿子为轻儿子而长链剖分则是选择儿子中子树深度最大的儿子为长儿子,其它为短儿子这样进行树剖后就有一些很奇妙的性质,即:一个节点的kth祖先所在的链的链长大于k我们考虑:对于每一条长度为xxx的链,我们记录链头的每个kth祖先(k∈[1,x...原创 2019-04-01 08:41:30 · 346 阅读 · 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 · 208 阅读 · 0 评论