数据结构-并查集
偷吃了老鼠的土豆
戒骄戒躁,脚踏实地,坚持不懈,愈挫愈勇。
展开
-
How many answers are wrong(并查集)
刚开始看可能Jio着这道题和并查集没有什么关系,不过仔细观察可以发现既然要判断矛盾就肯定知道与以前的数据有冲突的地方,因为没有说这个数列是不是正整数所以冲突的方式只有一种,比如先说了连个区间1-10 101-5 26-10 5跟明显第三句话就可以看出来问题了,第二个加第三个跟第一个不相等,但是他们表述的区间都是相同的,所以产生矛盾,不过这种矛盾应该怎么判断呢,我们可以以它的端点为点建立一个集合,他...原创 2018-06-23 21:22:03 · 116 阅读 · 0 评论 -
The Suspects (并查集)
题目大意:多个块,如果一个块里有0,则这个块里所有人都是患者,如果里边的患者又在其他块里,那么另外一个块里的也都是患者,以此类推;题解:很明显的并查集,用num[]数组记录之间的关系,先将num数组初始化为1,之后如果a和b之间有关系,将num[a]加到num[b]上,就相当于知道了多一个人是患者。这样每个点的记录数都是不一样的。其他都是按模板,Union函数稍微改一下。完整代码:#include...原创 2018-06-19 21:02:37 · 203 阅读 · 0 评论 -
How Many Tables(并查集)
用并查集求连通块进行了路径压缩,用t数组来标记联通块的个数(find函数是用来查找是否连通的)记得一定要经pre[]数组初始化。代码:#include <iostream>#include <string.h>using namespace std;#define MAX 1005int pre[MAX];int T;int N,M;int find(int...原创 2018-06-19 21:08:11 · 89 阅读 · 0 评论 -
Restructuring Company(并查集)
题目:https://vjudge.net/contest/240521#problem/CEven the most successful company can go through a crisis period when you have to make a hard decision — to restructure, discard and merge departments, f...原创 2018-07-23 19:15:45 · 385 阅读 · 0 评论 -
uva10462(次小生成树)
题目:Nasa, being the most talented programmer of his time, can’t think things to be so simple. Recently all his neighbors have decided to connect themselves over a network (actually all of them want t...原创 2018-09-28 00:19:16 · 158 阅读 · 0 评论 -
CodeForces-1131D (gourmet choice)(并查集+拓扑排序)
题目:http://codeforces.com/contest/1131/problem/D分析:对于‘=’ 我们进行缩点,利用并查集。对于‘<’ , 我们建立a[i] 到b[j] 的边,相反,对于‘>’ ,我们建立b[j] 到 a[i] 的边。对于每一个点进行编号,最后进行拓扑排序,同一个集合的点标号相同。有环无解,无环有解。#include <...原创 2019-03-04 23:45:23 · 144 阅读 · 0 评论