题意 板子题,题意很清楚吧。。 Sol 很显然可以直接上LCT。。 但是这题允许离线,于是就有了一个非常巧妙的离线的做法,好像叫什么线段树分治?? 此题中每条边出现的位置都可以看做是一段区间。 我们用线段树维护。线段树的每个节点维护一个vector表示覆盖了当前节点的边的存在区间 ...
在考场上遇到了这个的板子题,,,所以来学习了一下线段树分治 带撤销的并查集。 题目大意是这样的:有m个时刻,每个时刻有一个加边or撤销一条边的操作,保证操作合法,没有重边自环,每次操作后输出当前图下所有联通块大小的乘积。 首先观察到如果没有撤销操作,那么直接用并查集就可以维护,每次合并的时候乘上要合并的两个并查集大小的逆元,然后乘上合并之后的大小即可。 那么来考虑撤销,观察到如果并查集不带路径压缩 ...
2018-11-02 14:57 0 645 推荐指数:
题意 板子题,题意很清楚吧。。 Sol 很显然可以直接上LCT。。 但是这题允许离线,于是就有了一个非常巧妙的离线的做法,好像叫什么线段树分治?? 此题中每条边出现的位置都可以看做是一段区间。 我们用线段树维护。线段树的每个节点维护一个vector表示覆盖了当前节点的边的存在区间 ...
题目描述 这是一道被离线爆艹的模板题。 你要维护一张无向简单图。你被要求加入删除一条边及查询两个点是否连通。 0:加入一条边。保证它不存在。 1:删除一条边。保证它存在。 2:查询两个点是否联通 ...
[LOJ#121]动态图连通性 试题描述 这是一道模板题。 你要维护一张无向简单图。你被要求加入删除一条边及查询两个点是否连通。 0:加入一条边。保证它不存在。 1:删除一条边。保证它存在。 2:查询两个点是否联通。 输入 ...
题目链接 由于离线,考虑一个离线做法。对于这种一条边在某一区间出现的题目,往往可以用线段树分治离线解决。 先建立时间线段树,然后将每条边按照出现的时间插入到结点上面,然后 dfs 整棵线段树,走到某一个节点就对当前节点的所有边在并查集中进行 link 操作,然后递归两边,离开这个节点 ...
【LOJ121】「离线可过」动态图连通性 题面 LOJ 题解 线段树分治的经典应用 可以发现每个边出现的时间是一个区间 而我们每个询问是一个点 所以我们将所有边的区间打到一颗线段树上面去 询问每个叶子用并查集维护节点的联通性就好了 注意并查集因为要撤消所以只能用按秩合并保证复杂度 ...
无向图的双连通分量 1. 概念 设G=(V,E)是连通的无向图,如果V中顶点a是一个关节点,若V中有顶点v,w使得v,w,a各不相同且v和w之间的每条路都包含a。换言之,如果删除a和与之相邻的所有边时,就会把图的一个连通分量拆分成多个连通分量。 而若对V中每个不同的三元组v,w ...
题意:给定N,M,然后给出M组信息(u,v,l,r),表示u到v有[l,r]范围的通行证有效。问有多少种通行证可以使得1和N连通。 思路:和bzoj魔法森林有点像,LCT维护最小生成树。 开始和队友在想维护连通性,而不是维护树,这样好像会很麻烦。 队友yy了一个算法:用线段树模拟并查集维护 ...
闲话 stO猫锟学长,满脑子神仙DS 网上有不少Dalao把线段树分治也归入CDQ分治? 还是听听YCB巨佬的介绍: 看来可以理解为广义下的。 不过叫它线段树分治挺形象的啊! 线段树分治思想 我们在做CDQ的时候,将询问和操作通通视为元素,在归并过程中统计左边的操作对右边的询问 ...