LCT
guapisolo
已经弃掉CSDN转博客园了https://www.cnblogs.com/guapisolo/
展开
-
Link Cut Tree 动态树 小结
动态树有些类似 树链剖分+并查集 的思想,是用splay维护的lct的根是动态的,"轻重链"也是动态的,所以并没有真正的轻重链动态树的操作核心是把你要把 修改/询问/... 等等一系列的操作的树链放到一个splay里,然后用splay根据相对深度大小来维护这个树链lct利用了splay的神奇性质,通过"认爹不认子"来达到记录多个子树的目的lct的核心,access函数的意义是,在从...原创 2018-09-13 19:04:39 · 123 阅读 · 0 评论 -
bzoj 2631 [国家集训队]Tree II (LCT)
题目大意:给你一棵树,让你维护一个数据结构,支持边的断,连树链上所有点点权加上某个值树链上所有点点权乘上某个值求树链所有点点权和 (辣鸡bzoj又是土豪题,洛谷P1501传送门)LCT裸题,下传标记,搞法类似于洛谷线段树模板2先下传乘法标记,val,sum,乘法标记,加法标记都要乘再下传加法标记,val,加法标记直接加,sum应该加上子树size*加的值 ...原创 2018-09-13 21:05:07 · 130 阅读 · 0 评论 -
bzoj 2049 [SDOI2008]洞穴勘测 (LCT)
题目大意:维护一个森林,支持边的断,连,以及查询连通性LCT裸题 洛谷P2147传送门1A了,给自己鼓鼓掌#include <cstdio>#include <algorithm>#include <cstring>#define il inline#define inf 500000#define N 10100using names...原创 2018-09-13 21:10:12 · 103 阅读 · 0 评论 -
bzoj 3282 Link Cut Tree (LCT)
题目大意:维护一个森林,支持边的断,连,修改某个点的权值,求树链所有点点权的异或和洛谷P3690传送门搞了一个下午终于明白了LCT的原理#include <cstdio>#include <algorithm>#include <cstring>#define root d[0].ch[1]#define il inline#define...原创 2018-09-13 21:14:06 · 138 阅读 · 0 评论 -
bzoj 4530 [BJOI2014]大融合 (LCT)
题目大意:给你一棵树,树的边是一条一条连上去的洛谷P4219传送门 LOJ#2230传送门在连边的过程中询问某条边的“负载”,即能通过这条边的所有不同的路径的数量LCT动态维护当前节点的子树大小size记录该节点的虚子树的大小之和,sum记录该节点为根节点的子树大小更换虚子节点时,或者连上新的虚子树时,即access和link操作,要注意更新size#include &l...原创 2018-09-14 19:31:10 · 131 阅读 · 0 评论 -
bzoj 3510 首都 (LCT)
洛谷P4299传送门题目大意:给你一颗树,边是一条一条连上去的在连接过程中会存在询问,询问当前节点所在联通块(其实是一颗树)的重心是哪个节点以及森林中所有树的重心的异或和在做这道题之前,要先了解树的重心的一个性质:两棵树合并时,新树的重心在合并后,原来两颗树的重心的两个节点构成的那条链上了解了这条性质,思路就不难想了当连接两个节点时,先寻找它们所在原树的重心,然后连接这...原创 2018-09-15 15:34:52 · 157 阅读 · 0 评论