DFS/DFS序
文章平均质量分 67
QAQwdd
这个作者很懒,什么都没留下…
展开
-
HAOI2015 树上操作 DFS序+线段树
题目大意:给定一棵树,每个点有点权。有m个操作: 操作 1 :把某个节点 x 的点权增加 a 。 操作 2 :把某个节点 x 为根的子树中所有点的点权都增加 a 。 操作 3 :询问某个节点 x 到根的路径中所有点的点权和。 定睛一看,这不就是树链剖分的模板题吗?!连问题都是一样的。。。(树链剖分模板)不过因为我写的不熟,只能大力线段树。。。 思路:首先把树的DFS序求出来,这样就把树上...原创 2018-07-31 11:50:36 · 483 阅读 · 0 评论 -
最近公共祖先/LCA模板
惊觉自己还不会倍增。。。 水一发模板 ↑洛谷的图 求LCA(最近公共祖先)算法流程: - 将深度更深的点跳到与另一个点同一高度 - 两个点同时向上跳,直到找到LCA。 当然,我们可以用朴素算法,不过复杂度是O(n)的,会超时,这里我们用倍增来做。 倍增,简单来说就是“成倍增长”。 这里要用到一个定理:任何一个数都能表示为唯一的二进制分解形式。 显然,就像十进制下能不重复的...原创 2018-07-15 18:47:36 · 144 阅读 · 0 评论 -
NOIP2016 天天爱跑步 LCA+差分+桶
传送门 NOIP史上最难一题。。。 部分分出正解系列 测试点1-5:直接模拟即可 测试点6-8:树退化成一条链。我们先从dep[S]<dep[T]dep[S]<dep[T]dep[S]<dep[T]的情况开始想。depdepdep表示该点到点1的距离。如果路径上有个点满足被观察到的条件,那么dep[i]−dep[S]=w[i]dep[i]-dep[S]=w[i]d...原创 2018-10-19 21:04:35 · 250 阅读 · 0 评论