随笔分类 -  数据结构-树链剖分

【BZOJ3626】LCA(树上差分,树链剖分)
摘要:题意:给出一个n个节点的有根树(编号为0到n-1,根节点为0)。一个点的深度定义为这个节点到根的距离+1。设dep[i]表示点i的深度,LCA(i,j)表示i与j的最近公共祖先。有q次询问,每次询问给出l r z,求sigma_{l<=i<=r}dep[LCA(i,z)]。(即,求在[l,r]区间内 阅读全文

posted @ 2017-02-21 19:31 myx12345 阅读(251) 评论(0) 推荐(0)

【POJ3237】Tree(树链剖分)
摘要:题意:在一棵N个节点,有边权的树上维护以下操作: 1:单边修改,将第X条边的边权修改成Y 2:区间取反,将点X与Y在树上路径中的所有边边权取反 3:区间询问最大值,询问X到Y树上路径中边权最大值 n<=10000 CAS<=20 思路:做了2天,改出来的一刻全身都萎掉了 边权转点权,点权就是它到父亲 阅读全文

posted @ 2016-12-25 16:37 myx12345 阅读(162) 评论(0) 推荐(0)

【BZOJ2243】染色(树链剖分)
摘要:题意: 给定一棵有n个节点的无根树和m个操作,操作有2类: 1、将节点a到节点b路径上所有点都染成颜色c; 2、询问节点a到节点b路径上的颜色段数量(连续相同颜色被认为是同一段),如“112221”由3段组成:“11”、“222”和“1”。 请你写一个程序依次完成这m个操作。 数N<=10^5,操作 阅读全文

posted @ 2016-11-29 20:51 myx12345 阅读(420) 评论(0) 推荐(0)

【BZOJ4034】T2(树链剖分)
摘要:题意: 有一棵点数为 N 的树,以点 1 为根,且树点有边权。然后有 M 个 操作,分为三种: 操作 1 :把某个节点 x 的点权增加 a 。 操作 2 :把某个节点 x 为根的子树中所有点的点权都增加 a 。 操作 3 :询问某个节点 x 到根的路径中所有点的点权和。 对于 100% 的数据, N 阅读全文

posted @ 2016-11-28 20:14 myx12345 阅读(231) 评论(0) 推荐(0)

【BZOJ1036】树的统计Count(树链剖分,LCT)
摘要:题意:一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w。我们将以下面的形式来要求你对这棵树完成一些操作: I. CHANGE u t : 把结点u的权值改为t II. QMAX u v: 询问从点u到点v的路径上的节点的最大权值 I II. QSUM u v: 询问从点u到点v的路径上的 阅读全文

posted @ 2016-11-24 20:53 myx12345 阅读(398) 评论(0) 推荐(0)

导航