
并查集
ACkook
这个作者很懒,什么都没留下…
展开
-
poj1185带权并查集(一点点套路)
Description 动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。 现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。 有人用两种说法对这N个动物所构成的食物链关系进行描述: 第一种说法是"1 X Y",表示X和Y是同类。 第二种说法是"2 X Y",表示X吃Y。 此人对N个动物,用上述两种说原创 2018-01-11 20:01:00 · 263 阅读 · 0 评论 -
并查集找朋友入门
在社交的过程中,通过朋友,也能认识新的朋友。在某个朋友关系图中,假定 A 和 B 是朋友,B 和 C 是朋友,那么 A 和 C 也会成为朋友。即,我们规定朋友的朋友也是朋友。 现在,已知若干对朋友关系,询问某两个人是不是朋友。 请编写一个程序来解决这个问题吧。 输入格式 第一行:三个整数 n,m,p(n≤5000,m≤5000,p≤5000)分别表示有n 个人,m 个朋友关系,询问p原创 2018-01-10 11:40:50 · 872 阅读 · 0 评论 -
并查集朋友圈的范围
解题说明: 这里并不能初始化每个人的根节点,怎么办?用集合set记录已经初始化的,来一个人,你有没有之前朋友记录,没有—>先初始化根节点自己,朋友圈范围dis[]=1.之前有->查找朋友根节点,根节点不相同,合并集合,并把其中一个集合根节点范围dis[]改为加上另一个集合的dis[]之后的和.至此完成。代码 #include #include #include #include #includ原创 2018-01-10 21:09:26 · 217 阅读 · 0 评论