LCT动态维护MST LCT动态维护MST 我们可以枚举a,然后找从1到n的一条路径使得:这条路径上的b的最大值最小。这个路径肯定在MST上……所以枚举一遍所有的边,动态维护一个关于b值的MST即可。调了半天没出解的原因: rotate写错了……l=c[y][1]==x 我写成了 l=c[z]...
分类:
其他好文 时间:
2015-02-24 23:20:31
阅读次数:
216
LCT 动态维护MST嘛……但是有删边= =好像没法搞的样子 离线记录所有修改&询问,倒序处理,就可以变删边为加边了~ 论如何用LCT维护最小生成树:先搞出一棵最小生成树,然后每次加边(u,v)时,在LCT上询问u->v这条链上权值最大的边,如果这条边权值比新加的边权值要小,则忽略这条新加的边...
分类:
其他好文 时间:
2015-02-24 21:01:24
阅读次数:
245
LCT 直到动手写拆边为点的时候才发现根本不会写……去orz了一下Hzwer(话说这题应该也用不着LCT吧……下次再换种姿势写一遍好了) 1 /************************************************************** 2 Proble...
分类:
其他好文 时间:
2015-02-24 13:50:56
阅读次数:
221
Description给出一棵树,树节点的颜色初始时为白色,有两种操作:0 x:把x号节点颜色取反1 x:询问1到x路径上第一个黑点编号Solution最近想练练剖分和线段树,于是想到来做做Qtree系列,不会Lct嘤嘤嘤>_<这题比较裸,直接剖分然后维护区间最浅的黑色点标号就可以了注意到把1当做根节点,其实剖分后每个区间左区间显然是更浅的,如果有黑点直接统计答案就可以了Code#include <...
分类:
其他好文 时间:
2015-02-23 21:17:36
阅读次数:
219
本题将一道LCT的题特殊化(支持加边和删边,询问图的连通性),将图变成了2×m的网格图,然后就神奇地可以用线段树来维护。对于每个区间[l,r],维护其四个角落之间的连通性(仅仅通过[l,r]这段的边构建起的连通性)。查询[l,r]时,先计算出[1,l-1],[l,r],[r+1,c]这三个线段的连通...
分类:
其他好文 时间:
2015-02-21 23:27:53
阅读次数:
389
DescriptionSC省MY市有着庞大的地下水管网络,嘟嘟是MY市的水管局长(就是管水管的啦),嘟嘟作为水管局长的工作就是:每天供水公司可能要将一定量的水从x处送往y处,嘟嘟需要为供水公司找到一条从A至B的水管的路径,接着通过信息化的控制中心通知路径上的水管进入准备送水状态,等到路径上每一条水管...
分类:
其他好文 时间:
2015-02-17 17:36:30
阅读次数:
129
题目大意:给定N个点以及每一个点的权值,要你处理接下来的M个操作。操作有4种。操作从0到3编号。点从1到N编号。0:后接两个整数(x,y),代表询问从x到y的路径上的点的权值的xor和。保证x到y是联通的。1:后接两个整数(x,y),代表连接x到y,若x到Y已经联通则无需连接。2:后接两个整数(x,...
分类:
其他好文 时间:
2015-02-15 15:01:52
阅读次数:
160
这道题很久以前用树链剖分写的,最近在学LCT ,就用LCT再写了一遍,也有一些收获。因为这道题点权可以是负数,所以在update时就要注意一下,因为平时我的0节点表示空,它的点权为0,这样可以处理点权为非负求最大值和求和的情况(即不用特判某个点是否有左右儿子,直接更新就行了),但这道题就不行(求和要...
分类:
其他好文 时间:
2015-02-14 21:19:25
阅读次数:
187
动态树,支持加边,修改点权,查询链的点权和。 1 #include 2 #include 3 #define maxn 30010 4 using namespace std; 5 6 namespace L { 7 int pnt[maxn], pre[maxn], s...
分类:
其他好文 时间:
2015-02-14 13:42:58
阅读次数:
133
简单题,主要为了练手。 1 #include 2 #include 3 #define maxn 100010 4 using namespace std; 5 6 namespace L { 7 int pnt[maxn], pre[maxn], son[maxn][2...
分类:
其他好文 时间:
2015-02-13 23:38:57
阅读次数:
270