并查集
该专栏包括的题目涉及并查集算法。
XiaoZheng2003
博客暂时弃更
展开
-
无所不在的宗教
原题题目描述世界上许多不同的宗教,你很难把它们全都记住。你有兴趣找出学生们到底信仰多少种不同的宗教。已知学校共有N名学生(0 < N ≤ 50000),编号从1..N。你去询问每一个学生的宗教信仰是不可行的,而且,很多学生不愿意透露自己的信仰。一种避免这个问题的方法是询问M对学生(0 ≤ M ≤ N(N-1)/2)是否信仰同一种宗教。假定每个学生只信仰一种宗教,而且每个学生都要信仰一种宗教。输入输入原创 2017-02-25 09:34:02 · 936 阅读 · 0 评论 -
亲戚(附分析图)
一、原题亲戚(relation.cpp)时间限制: 1 Sec 内存限制: 64 MB题目描述若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易。 现在给出某个亲戚关系图,求任意给出的两个人是否具有亲戚关系。 我们规定:如果x和y是亲戚,y和z是亲戚,那么x和z也是亲戚;如果x,y是亲戚,那么x的亲戚都是y的亲戚,y的亲戚也都是x的亲戚。输入第一行:三个整数n,m,p,(n≤5000,m原创 2016-10-25 17:16:38 · 2849 阅读 · 1 评论 -
[NOI2001]食物链
原题题目描述动物王国中有三类动物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个动物,用上述两种说法,一句接一句地原创 2017-02-24 13:47:09 · 1296 阅读 · 0 评论 -
并查集主要知识
什么是并查集?并查集是一种树型的高级数据结构,主要用于处理不相交集合的合并及查询问题。它在计算机科学中有着广泛的应用,例如求解最小生成树、亲戚关系的判定、确定无向图的连通子图个数、最小公共祖先问题等,都要用到并查集。什么是集合?集合是数学中最基本的构造之一,将一组满足某种性质的对象放在一起就形成了集合。集合中包含的对象称为集合中的元素,集合中的元素是无序而且唯一的。人们常用大写英文字母A、B、C等来原创 2017-02-25 10:03:31 · 5022 阅读 · 1 评论