用并查集判断图是否连通,以及是否存在环~ #include<cstdio> #include<algorithm> #include<cstring> #include<vector> #include<unordered_map> using namespace std; const int ma ...
分类:
其他好文 时间:
2020-02-13 23:21:32
阅读次数:
116
小希的迷宫 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 67049 Accepted Submission(s): 21037 题目链接:ht ...
分类:
其他好文 时间:
2018-11-27 01:24:37
阅读次数:
173
传送门 迷宫中不能有回路,还要连通 如果最后集合数是一个那就是连通,否则不联通 要合并的两个顶点在相同集合内,表示出现了回路 输入时注意一下 1 #include<bits/stdc++.h> 2 using namespace std; 3 int f[100005]; 4 int getf(in ...
分类:
其他好文 时间:
2018-11-20 21:12:24
阅读次数:
200
题目: 上次Gardon的迷宫城堡小希玩了很久(见Problem B),现在她也想设计一个迷宫让Gardon来走。但是她设计迷宫的思路不一样,首先她认为所有的通道都应该是双向连通的,就是说如果有一个通道连通了房间A和B,那么既可以通过它从房间A走到房间B,也可以通过它从房间B走到房间A,为了提高难度 ...
分类:
其他好文 时间:
2018-08-18 13:23:22
阅读次数:
132
tips: 1.并查集裸题,用isroot数组记录有几个根节点。 3.改变isroot数组类型可以统计一个集合中元素的个数。 isroot[finddad(i)]++; 2.hdu1272--isroot数组出bug了。 #include<bits/stdc++.h> using namespace ...
分类:
其他好文 时间:
2018-08-01 20:49:18
阅读次数:
116
tips: 1.并查集产生的每一个集合都是一棵树。 2.流程:初始化;查找--判断两个元素是否在一个集合;合并。 3.查找过程递归会爆栈(本题),可以用非递归的方法进行路径压缩。 4.用并查集判断是否有环:对同一个集合来说只存在一个根节点,且将其作为所属集合的标识。 5.合并的过程是一个建树的过程。 ...
分类:
其他好文 时间:
2018-08-01 20:48:49
阅读次数:
128
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1325 解题思路: 判断 连通 && 边数 == 节点数-1 && 只有一个根 即可。需要注意的是 0 0这种情况应该是 Yes 本题与Hdu1272神似 代码: 题目: Is It A Tree? Ti ...
分类:
其他好文 时间:
2017-08-06 14:16:20
阅读次数:
247
1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 const int M = 100005; 8 int a, b; 9 int father[M]; //记录父节点 10 bool circle; //判断... ...
分类:
其他好文 时间:
2017-07-20 17:28:37
阅读次数:
108
题目链接:https://vjudge.net/problem/HDU-1272 题目分析:以前做过的一道并查集,今天翻到了就重新做一次。 注意点:1、当输入只有“ 0 0"时输出”Yes"; 2、"有且仅有一条路径可以相通","有且仅有一条路径可以相通","有且仅有一条路径可以相通","有且仅有一 ...
分类:
其他好文 时间:
2017-06-11 17:19:11
阅读次数:
156
***************************************转载请注明出处:http://blog.csdn.net/lttree*************************************** 小希的迷宫 Time Limit: 2000/1000 MS (Java ...
分类:
其他好文 时间:
2017-06-06 18:49:42
阅读次数:
197