
树链剖分
岛屿失梦°
这个作者很懒,什么都没留下…
展开
-
P1505 [国家集训队]旅游-树链剖分
P1505 [国家集训队]旅游-树链剖分 码量惊人 题意 如上 思路 1.板子 2.边权转移到点权上,修改时不同链正常修改,相同链上if(x!=y) update(dfn[x]+1,dfn[y])。 3.其余就是恶心的线段树了。十分恶心 pushup void pushup(int o){ t[o].sum=t[ls].sum+t[rs].sum; t[o].max=max(t[ls].max,t[rs].max); t[o].min=min(t[ls].min,t[rs].mi原创 2020-05-21 20:54:01 · 260 阅读 · 0 评论 -
[NOI2015]软件包管理器 树链剖分
[NOI2015]软件包管理器 树链剖分 在水一道 题意 如上 思路 1.版子 2.线段树区间覆盖 pushup void pushup(int o){ t[o].sum=t[o<<1].sum+t[o<<1|1].sum; } pushdown void pushdown(int o){ if(t[o].lazy!=-1){ t[o<<1].lazy=t[o<<1|1].lazy=t[o].lazy; t[原创 2020-05-21 17:10:36 · 168 阅读 · 0 评论 -
VMware校园挑战赛E 树链剖分
小V和gcd树 树链剖分 好题 题意 如上 题外话: 1.树链剖分其实就是logn条链连接成,这条链满足头节点为轻儿子,之后均是重儿子相连。。。。1.轻-重-重-重-重-重-重 2.轻-重-重-重3.轻-重 这样的连在一起 2.top[x]为轻儿子 ,也是重链头 3.注意第二遍 为dfs2(1,1) 思路: 1.放入模板 2.update 更改u->son[u] 与 u->fa[u] 的权值。 3.query 时 记住top[x]为轻儿子,而轻儿子与father的权值肯定未被更改需要单独计算原创 2020-05-21 13:04:12 · 195 阅读 · 0 评论 -
【模板】树链剖分
【模板】树链剖分 如题,已知一棵包含N个结点的树(连通且无环),每个节点上包含一个数值,需要支持以下操作: 操作1: 格式: 1 x y z 表示将树从x到y结点最短路径上所有节点的值都加上z 操作2: 格式: 2 x y 表示求树从x到y结点最短路径上所有节点的值之和 操作3: 格式: 3 x z 表示将以x为根节点的子树内所有节点值都加上z 操作4: 格式: 4 x 表示求以x为根节点的子树内...原创 2019-09-03 17:26:36 · 160 阅读 · 0 评论