![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构--并查集
ez_yww
这个作者很懒,什么都没留下…
展开
-
【XSY2469】graph 分治 并查集
题目大意 给你一张nn个点mm条边的无向图,问删去每个点后,原图是不是二分图。 n,m≤100000n,m\leq 100000题解 一个图是二分图⟺\Longleftrightarrow该图不存在奇环 可以用并查集,维护每个点到根的距离 如果删除xx点,就要把所有不与xx连接的边加入并查集 考虑分治,对于区间[l,r][l,r],我们先把与[l,mid][l,mid]链接且不与[mid原创 2017-09-09 16:37:46 · 541 阅读 · 0 评论 -
【BZOJ1015】【JSOI2008】星球大战 并查集
题目大意 给你一张nn个点mm条边的无向图,有qq次操作,每次删掉一个点以及和这个点相邻的边,求最开始和每次删完点后的连通块个数。 q≤n≤400000,m≤200000q\leq n\leq 400000,m\leq 200000题解 我们可以用并查集维护连通块个数,可惜并查集不支持删除操作。 但是这道题没有强制在线,所以可以先删完所有点后再一个个加回来。 加边的时候维护连通块个数。原创 2017-10-23 15:19:15 · 213 阅读 · 0 评论 -
【AGC014E】Blue and Red Tree 并查集 启发式合并
题目描述 有一棵nn个点的树,最开始所有边都是蓝边。每次你可以选择一条全是蓝边的路径,删掉其中一条,再把这两个端点之间连一条红边。再给你一棵树,这棵树的所有边都是红边,问你最终能不能把原来的树变成这棵新树。 n≤100000n\leq 100000题解 考虑最后一条加的边,那么当前也有一条相同的蓝边。也就是说,如果把这两棵树合在一起,这两个点之间会有两条边。然后可以把这两个点缩成一个点。 所原创 2017-10-25 16:37:36 · 866 阅读 · 0 评论 -
【XSY2707】snow 线段树 并查集
题目描述 有nn个人和一条长度为tt的线段,每个人还有一个工作范围(是一个区间)。最开始整条线段都是白的。定义每个人的工作长度是这个人的工作范围中白色部分的长度(会随着线段改变而改变)。每一天开始时你要选择一个人满足这个人的工作长度最小(如果有多个就选编号最小的)。把这个人的工作区间染黑。请你输出每天你选了哪个人。 保证工作范围中左端点和右端点单调递增。 n≤300000n\le原创 2018-01-10 08:41:39 · 247 阅读 · 0 评论