hdu 1232 畅通project
HDU project 畅通
2023-09-14 09:07:58 时间
题目:
链接:点击打开链接
算法:
赤裸裸的并查集。
代码:
#include<iostream> #include<cstdio> #include<cstring> using namespace std; int n,m; int root[1010]; int find(int x) { int r = x; while(root[r] != r) r = root[r]; return r; } void merge(int x,int y) { int fx = find(x); int fy = find(y); if(fx != fy) root[fx] = fy; } int main() { //freopen("input.txt","r",stdin); int a,b; int cnt; while(scanf("%d",&n) != EOF && n) { memset(root,0,sizeof(root)); for(int i=1; i<=n; i++) root[i] = i; scanf("%d",&m); for(int i=1; i<=m; i++) { scanf("%d%d",&a,&b); merge(a,b); } cnt = -1; for(int i=1; i<=n; i++) { if(root[i] == i) cnt++; } printf("%d\n",cnt); } return 0; }
相关文章
- hdu 3308 线段树,单点更新 求最长连续上升序列长度
- HDU 2501 Tiling_easy version(简单递推)
- 【37.48%】【hdu 2587】How far away ?(3篇文章,3种做法,LCA之Tarjan算法)
- 【hdu 2149】Public Sale
- 【2017中国大学生程序设计竞赛 - 网络选拔赛 hdu 6150】Vertex Cover
- hdu 5277 YJC counts stars
- hdu 3549 Flow Problem(最大流模板题)
- HDU 1272 小希迷宫(并检查集合)
- HDU 1248 冰封王座(dp)
- hdu 2049 不easy系列之(4)——考新郎
- HDU 3217 Health(状压DP)