并查集
并查集
这里是一只小小琪
这里是一个追星程序员女孩
展开
-
Por Costel and the Match 【Gym - 100923H】【并查集】【带权并查集】
题目链接 题目大意 现在一共有n个人,m次询问,询问x和y是不是敌人,是敌人就输出YES否则输出NO。优先输出YES。 题解思路 把n个人拆成n*2个人,每个人拆成两个小人,这两个小人站在不同的阵营中,如果x和y是敌人,那么x+n和y+n也是敌人,那么x和n+y就是队友,y和n+x也是队友。 #include<stdio.h> #include<string.h> #inc...原创 2019-07-30 16:03:19 · 141 阅读 · 0 评论 -
食物链 【POJ 1182】【带权并查集 板子】
题目链接 动物王国中有三类动物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个动物,用上述两种说法,一句接一句地说出K句...原创 2019-09-10 10:47:00 · 105 阅读 · 0 评论 -
How Many Answers Are Wrong【HDU 3038】【带权并查集】
题目链接 题目大意 有一个长度为n的数组,给出m条信息,每条信息给出的是l,r之间的和,问你有多少条信息是错误的。 一条信息被判为错误是和之前的正确信息相冲突。 解题思路 我们可以用带权并查集来做这个题 题中给的信息是l,r之间的和为v,那么可以转化为 r 这点比 l-1 这个点大v。 检查冲突就好了 #include<stdio.h> #include<string.h>...原创 2019-09-10 17:26:23 · 88 阅读 · 0 评论 -
分数调查 【HihoCoder 1515】【带权并查集】
题目链接 题目大意 有n个学生,已知m个信息,每个信息说明了x比y高多少分。有q个询问,每个询问输出x比y高多少分,不能判断的输出-1 解题思路 用带权并查集 x比y高多少分,就是x和y这个关系上的权值。 当x和y没有公共祖先节点的时候就输出-1。 #include<stdio.h> #include<string.h> #include<algorithm> ...原创 2019-09-10 17:54:28 · 121 阅读 · 0 评论