并查集-hdu1232
2016-11-02 00:32
274 查看
并查集的水题,模板一套,基本什么都不用改。
代码如下:
代码如下:
#include <stdio.h> #define MAXN 1010 int root[MAXN], ans; int Find(int x) { while(x != root[x]) { x = root[x]; } return x; } void Union(int x, int y) { x = Find(x); y = Find(y); if(x != y) { root[x] = y; ans --; //每连通一个,道路数就该减1 } } int main() { int N, M; int s1, s2; while(scanf("%d", &N),N) { scanf("%d", &M); ans = N-1; for(int i = 1; i <= N; i++) //i应该从1开始,不然N点找不到root初始化的值,这里有点小坑。。。WA了几次 { root[i] = i; } for(int i = 0; i < M; i++) { scanf("%d %d", &s1, &s2); Union(s1, s2); } printf("%d\n", ans); } return 0; }
相关文章推荐
- 并查集——HDU1232
- HDU1232 畅通工程 并查集(第一题) 水题
- 算法-并查集-基于hdu1232
- hdu1232 并查集
- 水过一道并查集 hdu1232
- hdu1232 畅通工程(并查集)
- 并查集-HDU1232-畅通工程
- hdu1325 hdu1272 hdu1232 并查集应用
- 并查集入门--畅通工程(HDU1232)
- 并查集——畅通工程(hdu1232)
- HDU1232-畅通工程 (并查集)
- 并查集 hdu1232畅通工程
- [HDU1232] 畅通工程 (并查集 or 连通分量)
- 【HDU1232 】畅通工程(并查集)
- Hdu1232 - 畅通工程 - 并查集
- 并查集 hdu1232 畅通工程
- hdu1232(畅通工程 并查集)
- hdu1232 并查集
- HDU1232 畅通工程 并查集
- hdu1232 畅通工程(并查集模板)