树链剖分
树链剖分
王江奎
这个作者很懒,什么都没留下…
展开
-
树链剖分入门+HYSBZ - 1036树的统计Count
今天学习了树链剖分,记录一下。 【题目背景】 HYSBZ - 1036树的统计Count 【题目分析】 题目要求求任意结点之间路径的和以及路径上最大的结点,还有可能修改。如果正常做可能会很复杂(我也不知道正常应该怎么做,应该要用到LCA什么的,我还不太会)。 但是如果我们能够用线段树或者树状数组维护这个树,那么这种问题就会变得很简单。树链剖分就是这样一种将树映射在一个数组上变成线性结构然后用线段树...原创 2019-08-01 14:56:19 · 137 阅读 · 0 评论 -
SPOJ - QTREE3Query on a tree again!——树链剖分
【题目描述】 SPOJ - QTREE3Query on a tree again! 【题目分析】 题目要求是输出从111到xxx的路径上遇到的第一个黑色的点。我们可以用树链剖分(不了解的同学请出门左拐,详见树链剖分入门) 我们用线段树维护每个区间第一次遇到黑点的位置,这样访问出的点同样是从1开始路径上的第一个点。因为我们总是从根节点1开始,我们在访问的时候从后往前每次访问重链时在线段树上都是一...原创 2019-08-01 17:13:43 · 157 阅读 · 0 评论 -
HYSBZ - 2243染色——树链剖分+线段树建树技巧
【题目描述】 HYSBZ - 2243染色 【题目分析】 虽然是一道很裸的树链剖分,可是我一直没有看清楚题,以为求的是路径上出现颜色的种类,然后就写了一个区间染色的线段树进行维护,过样例的时候才发现题读错了,人家要求的是路径上出现的颜色段,所以颜色的种类不重要,重要的是每一段每一段。理所当然,我们应该用线段树维护所在区间有多少段。但是左右区间上传的时候如果边界颜色相同(左节点的右边界和右节点的左边...原创 2019-08-03 17:12:47 · 129 阅读 · 0 评论 -
HYSBZ - 2157树链剖分
【题目描述】 HYSBZ - 2157树链剖分 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190805163744917.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1RfVDIzMzMzMzM...原创 2019-08-05 16:44:44 · 160 阅读 · 0 评论 -
CodeChef - DGCD——树链剖分+差分
【题目描述】 You're given a tree on N vertices. Each vertex has a positive integer written on it, number on the ith vertex being vi. Your program must process two types of queries : 1. Find query represe...原创 2019-08-21 10:52:40 · 409 阅读 · 0 评论