题意:输入n,m。n个人,m个规定/询问。一共有两个集合,A:询问a,b是否在同一个集合?D:表明a,b不在同一个集合。输出有三种,不在同一集合,在同一集合,不确定。 解析:其实有点离散化的意思。传统并查集是合并两个集合,而这个题是分开两个集合。那么可以这么做,想办法进行合并操作。输入a,b,a,b ...
分类:
其他好文 时间:
2020-03-20 12:29:11
阅读次数:
61
一、题面 POJ1703 二、分析 需要将并查集与矢量法则相结合。par数组用以记录父节点,rank用以记录与父节点的关系。如题意,有两种关系,设定0是属于同一个帮派,1表示不属于同一个帮派。 运用并查集的时候判断x,y时考虑几种情况: 1.x与y父节点不相同:此时为不清楚两者关系。 2.x与y父节 ...
分类:
其他好文 时间:
2018-12-17 23:50:31
阅读次数:
208
https://vjudge.net/problem/POJ-1703 9ms多,卡着时间过了。上次一道并查集也是这样,总觉得要学一波并查集的优化。。 续:好像是可以只做一层存放敌人即可。 ...
分类:
其他好文 时间:
2018-05-06 01:38:03
阅读次数:
162
Find them, Catch them Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 49640 Accepted: 15255 Description The police office in Tadu City deci ...
分类:
其他好文 时间:
2018-03-11 00:27:38
阅读次数:
176
题意:食物链的弱化版本 解题关键:种类并查集,注意向量的合成。 $rank$为1代表与父亲对立,$rank$为0代表与父亲同类。 法二:$fa$数组代表$i$属于$A$或$i$属于$B$ ...
分类:
其他好文 时间:
2017-12-02 00:40:24
阅读次数:
161
题目链接 http://poj.org/problem?id=1703 题意 有两个帮派:龙帮和蛇帮,两个帮派共有n个人(编号1~n),输入m组数据,每组数据为D [a][b]或A [a][b],D[a][b]表示a,b属于不同的帮派,A [a][b]则让我们判断a,b是否属于一个帮派,根据判断的结 ...
分类:
其他好文 时间:
2017-12-01 22:17:22
阅读次数:
230
Time Limit: 1000MSMemory Limit: 10000KTotal Submissions: 32909Accepted: 10158DescriptionThe police office in Tadu City decides to say ends to the chao... ...
分类:
其他好文 时间:
2017-07-22 23:37:37
阅读次数:
185
一般的并查集是维护属于同一种类的元素,对于属于不同种类的元素之间的关系没有记录。种类并查集就是同一集合中的元素是已经确定关系的(是否属于同一种类),然后加一个group数组,记录一下孩子和父亲是否属于同一种类,递推稍稍改一下就可以了。 poj1703:http://poj.org/problem?i ...
分类:
其他好文 时间:
2017-06-22 01:17:14
阅读次数:
288
传送门 1.开两个并查集 f[x] 表示 x 的同类 f[x + n] 表示 x 的敌人 ——代码 1 #include <cstdio> 2 #include <iostream> 3 #define N 200001 4 5 int T, n, m; 6 int f[N]; 7 8 inline ...
分类:
其他好文 时间:
2017-06-15 10:42:54
阅读次数:
263
题目链接:http://poj.org/problem?id=1703 题意:有n个人分别属于两个团伙,接下来m组形如 ch, x, y的数据,ch为“D"表示 x, y属于不同的团伙,ch为"A"表示询问x,y书否属于同一个团伙; 解法1:我们可以用jion(x, y)属于同一个团伙,jion(x ...
分类:
其他好文 时间:
2016-10-28 20:37:37
阅读次数:
229