![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
树链剖分
没4年
这个作者很懒,什么都没留下…
展开
-
树链剖分模板题
树链剖分的学习,我是从树链剖分-1和树链剖分-2来学会的。模板题简单讲一下树链剖分吧,就是它首先第一遍dfs1,就将f[i] ,dep[i] ,sz[i] ,son[i]都预处理好,它们分别代表节点i的父节点,深度,子节点的数量,重节点;第二遍dfs2,就将id[i],rk[i],top[i],分别代表节点i的dfs序,dfs序为i的节点,节点i所在链的顶端节点。如果你有lca和线段树的知识,...原创 2019-10-03 13:40:56 · 169 阅读 · 4 评论 -
2019 西安邀请赛 E题
题解:首先我们读完题,将题目简化一下,一个nim博弈,仅当每堆石子个数的异或和为0时,先手必败,否则先手必胜。那么题目就变成了三种操作,1操作让1到s的路径上的点都 | t ,2操作让1到s的路径上的点都 & t,3操作简化为求1到s的异或和是否等于t。这道题的关键不在于树链剖分,而在于维护异或和的线段树。那么我维护两个数组:lz_and[i] 和 lz_or[i],分别代表需要and和...原创 2019-10-04 11:16:17 · 180 阅读 · 0 评论