并查集
文章平均质量分 71
图论结构,连通性判定
.SAI.
十年感悟 两年参悟
展开
-
洛谷 P2449 矩形(并查集)
题目描述:题目传送门解题思路:很板子的一道并查集题目,就是求这个由多个矩形组成的连通分量。我们只需要判断这个矩形与先前互不联通的矩形是否联通,若联通,那么这块矩形相当于已经标记过了;若没有,那么这是一块崭新的矩形,最后看看有多少连通块即可。这得一提的是判断矩形是否重合的方法:首先我们得判断矩形是否有一部分的面重合,那么显然符合同一矩形的情况。然后判断是否有矩形只有顶点重合,若有,不符合重合情况。矩形重合判断代码:bool check(int x1,int y1,int x2,int原创 2021-12-24 20:52:02 · 596 阅读 · 0 评论 -
CF510B 两点(DFS/BFS/并查集判环)
题目描述:题目传送门解题思路:一道在地图上连通块中判环的题目,我们可以考虑用 dfsdfsdfs 和 bfsbfsbfs 两种方法来判环。深搜判环由于环的本质上就类似于一条头尾相接的链,因此用“一路走到底” 的DFS是最合适不过的了。我们每个点都尝试延伸,向与它同颜色的一个点一直往下走,直道找到一条长度大于4的路径,使得他们头尾相连,那么这就是一条符合题目要求的环。代码难度也不高,就是爆搜。#include <bits/stdc++.h>using namespace原创 2021-12-18 09:48:25 · 825 阅读 · 0 评论 -
洛谷 P2502 旅行 SSL 1312 (并查集暴力)
题目描述:题目传送门解题思路:遇到这种满足某种条件下找最值得问题,如这题,在路径中找到比值最小的最大值和最小值。我们并不需要先找到路径,然后在路径里面找到最大值和最小值,这样子的话很难找到头绪。我们可一个换个思路,枚举路劲的权值的最小值的下限 iii 和最大值的上限 jjj然后把符合这个上下限权值条件的边上的点所在的集合都按边的关系合并,也就是说若 aaa 和 bbb 之间有一条满足条件的边,则将 aaa 和 bbb 所在的集合合并。最后判断选用的这些边是否构成一条能够从起点到达目标点路劲,原创 2021-12-18 15:51:53 · 548 阅读 · 0 评论 -
洛谷 P1196 银河英雄传说 (带权并查集)
题目描述:题目传送门解题思路:根据数据范围以及题目中提到的合并等操作可以联想用并查集求解。但是仔细想想,普通并查集只能判断某元素是否为统一集合的联通性问题,而题目中提到了“战舰数量”等权值性的问题,这种时候我们就要对并查集进行一些改变,成为可以处理权值的带权并查集。带权并查集必须要了解的前置知识是并查集(废话),百度食用更佳。带权并查集其实和普通并查集没有本质的区别,仅仅只是需要在路径压缩或合并集合的时候维护或更新节点与父节点的边权关系以及维护该集合内元素个数。设 faxfa_{x原创 2021-12-19 14:04:26 · 487 阅读 · 3 评论