Link Cut Tree 的懒标记下传正确食用方法。 我们来逐步分析每一个操作。 1: :将u到v的路径上的点的权值都加上自然数c; 解决方法: 很显然,我们可以 split(u,v) 来提取 这一段区间,提取完了将 Splay(v),然后直接在 上打加法标记add即可。 代码: 2: :将树中原 ...
分类:
其他好文 时间:
2019-01-13 17:05:53
阅读次数:
190
"原题传送门" 这题用Link Cut Tree解决, "Link Cut Tree详解" 这道题的难点就在如何求LCA: 我们珂以先对其中一个点进行access操作,然后对另一个点进行access操作,因为LCA到根的边一定都由第一次access变为实边了,在之后的这一次access操作的最后一条 ...
分类:
其他好文 时间:
2019-01-01 16:12:52
阅读次数:
121
"原题传送门" 这题用Link Cut Tree解决, "Link Cut Tree详解" 我不太会踩爆Link Cut Tree的并查集做法qaq 我们用Link Cut Tree维护连通性~~(十分无脑)~~ Connect操作:把u,v两个点连起来 Destroy操作:把u,v两个点分开来 Q ...
分类:
其他好文 时间:
2018-12-31 21:14:55
阅读次数:
138
"原题传送门" 这题用Link Cut Tree解决, "Link Cut Tree详解" 我们用Link Cut Tree维护连通性~~(十分无脑)~~ 一开始先把树中每条边的两端连接 U操作:把u,v两个点连起来 C操作:把u,v两个点分开来 Q操作:判断在这个森林里u的根和v的根是否相等(是否 ...
分类:
其他好文 时间:
2018-12-31 21:12:57
阅读次数:
143
图片参考 "YangZhe的论文" , "FlashHu大佬的博客" Link Cut Tree实际靠的是实链剖分,重链剖分和长链剖分珂以参考 "树链剖分详解" Link Cut Tree将某一个儿子的连边划分为实边,而连向其他子树的边划分为虚边 区别在于虚实是可以动态变化的,因此要使用更高级、更灵 ...
分类:
其他好文 时间:
2018-12-31 15:51:05
阅读次数:
141
"嘟嘟嘟" LCT竟然看了整整一天,但好歹是看懂了。 教程这里不写,强烈推荐闪狐大佬的 "博客" 。 ...
分类:
其他好文 时间:
2018-12-20 20:32:33
阅读次数:
207
link-cut-tree 是一种维护森林的数据结构,可以在log的时间内完成修改、查询链上信息等操作 。 实链剖分 我们知道,树链剖分通过划分轻重链,保证了一个点到根最多有log跳轻链和log条重链从而保证复杂度为log。 而LCT通过把每条边划分成实边和虚边,把整棵树拆成若干部分,每部分在原树中 ...
分类:
其他好文 时间:
2018-12-14 21:14:32
阅读次数:
149
类似树链剖分(其实直接记住就可以了),提前放代码 Link Cut Tree的一些注意: 同一个Splay中没有相同深度点 Splay需要先放标记 然后Splay的根的父亲不一定是0 认父不认子,就是儿子父亲不变,但是父亲只记录一个儿子 核心操作: access 提取一个到根的路径 考虑现在是一个由 ...
分类:
其他好文 时间:
2018-10-05 19:24:36
阅读次数:
194
动态树有些类似 树链剖分+并查集 的思想,是用splay维护的 lct的根是动态的,"轻重链"也是动态的,所以并没有真正的轻重链 动态树的操作核心是把你要把 修改/询问/... 等等一系列的操作的树链放到一个splay里,然后用splay根据相对深度大小来维护这个树链 lct利用了splay的神奇性 ...
分类:
其他好文 时间:
2018-09-25 01:06:19
阅读次数:
151
哇,做梦也没想到我居然能写LCT 题意: 给定n个点以及每个点的权值,要你处理接下来的m个操作。操作有4种。操作从0到3编号。点从1到n编号。 0:后接两个整数(x,y),代表询问从x到y的路径上的点的权值的xor和。保证x到y是联通的。 1:后接两个整数(x,y),代表连接x到y,若x到y已经联通 ...
分类:
其他好文 时间:
2018-08-10 20:01:50
阅读次数:
159