并查集
kuricip
如果你瞄准月亮,即便迷失,也是在星辰之间
展开
-
How Many Answers Are Wrong(带权并查集)
How Many Answers Are Wrong题目传送门How Many Answers Are Wrong 题目大意给你一个区间长度n,以及m个子区间子区间有x,y,z三个参数,代表[a,b][a,b][a,b]区间的和为z如果一个子区间和与前面的子区间和冲突,则错误求错误的子区间的个数思路参考大佬的详细做法吧,HDU 3038 带权并查集判错我的区间表示的是[a,b)[a,b)[a,b),一样的可以的AC Code#include<cstdio>#includ原创 2020-09-06 10:18:07 · 119 阅读 · 0 评论 -
How Many Tables(并查集)
How Many Tables题目传送门How Many Tables题目大意给你n个人和m次输入每次输入两个认识的人,人可以通过认识的人认识其他人求最后形成的都不认识的集合的个数思路并查集维护集合,最后判断一下集合的个数即可(即祖先结点为自己的点)AC Code#include<cstdio>#include<algorithm>#include<iostream>#include<cstring>using namespace原创 2020-09-06 00:16:40 · 167 阅读 · 0 评论 -
The Suspects(并查集)
The Suspects题目传送门The Suspects题目大意给你学生数量n,以及m个学生团体每个团体给你x个人和他们的编号,求与编号0在一个团体过的人数思路很明显的并查集维护与0在一起过的人即可,同时记录一下每个祖先结点的值(即该集合的值)AC Code#include<cstdio>#include<algorithm>#include<iostream>#include<cstring>using namespace std原创 2020-09-06 00:06:10 · 82 阅读 · 0 评论 -
Wireless Network(并查集)
Wireless Network题目传送门Wireless Network题目大意在二维平面上,给你n个点,和一个距离dO+数字表示激活该台电脑S+数字+数字,表示连通两台电脑,在d距离之内就能连通,能连通输出SUCCESS,不行就输出FAIL思路每次有电脑被激活的时候,就遍历一次可以连接到的电脑,对于同一个集合(即连接了的电脑)使用并查集维护一下就可以了AC Code#include<cstdio>#include<algorithm>#include<原创 2020-09-04 18:09:22 · 356 阅读 · 0 评论 -
I Interesting Computer Game(并查集)
I Interesting Computer Game题目传送门Interesting Computer Game思路将每次输入的a和b当做点,将其连成一条边,很明显的对于形成的连通块来说,如果无环就只能取到当前连通块的顶点减一的点,如果连通块内存在至少一个环,即可将该连通块取完,所以我们只需要判断连通块有无环同时我们注意到数据的范围为1≤ai≤1091 \le a_i \le 10^91≤ai≤109 1≤bi≤1091 \le b_i \le 10^91≤bi≤109所以要采取离散化的原创 2020-08-04 23:54:55 · 199 阅读 · 0 评论 -
Little W and Contest(并查集)
Little W and Contest(并查集)题目传送门Little W and Contest题意俱乐部有n个人,其中有标号为1和2的两种人, 一个队伍至少保包含两个标号为2的人最开始大家相互不熟悉,每天会有人相互认识,也可以通过认识的人去认识其他人(并查集)要求队伍中的人互相不认识,求每天可以组成的队伍思路第一天大家都不认识,我们可以选择2 2 1和2 2 2,求出此时的ans后面的几天,可以将人分成三种,当天认识的u,v和其他的w,因为u和v肯定是不互相认识的,所以认识u的原创 2020-07-30 19:26:44 · 313 阅读 · 0 评论