并查集
文章平均质量分 59
Werky_blog
这个作者很懒,什么都没留下…
展开
-
1118 并查集
这道并查集其实很简单,circul别搞错就行 复制相似代码一定把变量改过来,尽量少偷懒 /* 并查集:一种树形结构,后存储数据,查找只需线性的复杂度 存的是鸟不是树 */ #include #include #include #include using namespace std; const int maxn=10005; int ans[maxn]={0},father[max原创 2017-09-12 22:58:37 · 196 阅读 · 0 评论 -
hdu 1232 畅通工程(并查集)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1232 #include #include #include using namespace std; const int maxn=1005; int father[maxn],ans[1005]; int find(int x){ //查找并认爸爸 if(x!=father[x])原创 2017-09-23 11:49:58 · 122 阅读 · 0 评论 -
hdu 1598 并查集,kruskal
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1598 先排序,i 一定为最小权值边,j 一定为最大边,找差值最小 kruskal生成树过程中,start和end连通即可停止,在 i 的循环里找出最小差值。 #include #include #include using namespace std; const int inf=999999999原创 2017-09-24 11:55:25 · 205 阅读 · 0 评论 -
1107 并查集
根本不明白下标有什么作用? 从0开始和从1开始有什么区别? /* 放入并查集的还是人而不是课程, */ #include #include #include #include using namespace std; vector ans,father; bool cmp1(int a,int b){ return a>b; } int find(int x){ i原创 2017-09-12 19:45:04 · 190 阅读 · 0 评论 -
hdu 1811 Rank of Tetris (拓扑排序+并查集)
/* 思路:相等的数可以看做一个,用并查集合并作为一个数。和儿子节点的边也都可以转化为和父节点的边。 */ #include #include #include #include using namespace std; const int maxn=10005; int in[maxn],sum,n,m,X[maxn],Y[maxn],fa[maxn]; vector G[maxn];原创 2017-09-28 22:52:26 · 180 阅读 · 0 评论 -
L2-010 裸并查集
题目:https://www.patest.cn/contests/gplt/L2-010#include<bits/stdc++.h> using namespace std; const int maxn=1005; //always online int fa[maxn]; bool f[maxn][maxn]; int find(int x){ return fa[x]...原创 2018-03-07 20:18:59 · 150 阅读 · 0 评论 -
L3-003 社交集群
题目:https://www.patest.cn/contests/gplt/L3-003#include<bits/stdc++.h> using namespace std; const int maxn=1e4+10; int fa[maxn],a[maxn]; vector<int> v; set<int> ans; int find(int x){ ...原创 2018-03-14 21:05:03 · 382 阅读 · 0 评论 -
L2-024 部落
题目:https://www.patest.cn/contests/gplt/L2-024写并查集老忘了初始化fa[]数组。。。#include <bits/stdc++.h> #define ll long long int using namespace std; const int maxn=10005; int fa[maxn]; set<int > s; int ...原创 2018-03-11 18:06:00 · 572 阅读 · 0 评论 -
hdu 1272 小希的迷宫(并查集判断回路和是否连通)
题目:点击打开链接思路:用并查集,判断是否有回路和是否全部连通。空树(0 0)输出yes。判断回路:等等,其实没必要一定让大的作为父结点,连在一起就行,判断如果有相同父节点,说明有回路。#include<bits/stdc++.h> #define ll long long int using namespace std; const int N=100010; int h[N]; ...原创 2018-03-30 18:27:24 · 573 阅读 · 0 评论