HDU - 1232 畅通工程 【连通块】
Description
某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要互相间接通过道路可达即可)。问最少还需要建设多少条道路?
Input
测试输入包含若干测试用例。每个测试用例的第1行给出两个正整数,分别是城镇数目N ( < 1000 )和道路数目M;随后的M行对应M条道路,每行给出一对正整数,分别是该条道路直接连通的两个城镇的编号。为简单起见,城镇从1到N编号。
注意:两个城市之间可以有多条道路相通,也就是说
3 3
1 2
1 2
2 1
这种输入也是合法的
当N为0时,输入结束,该用例不被处理。
Output
对每个测试用例,在1行里输出最少还需要建设的道路数目。
Sample Input
4 2 1 3 4 3 3 3 1 2 1 3 2 3 5 2 1 2 3 5 999 0 0
Sample Output
1 0 2 998
#include <stdio.h>
#include <string.h>bool a[1002][1002];
bool vd[1002];
int n;void dfs(int v){for (int i = 1; i <= n; i++){if (!vd[i] && a[v][i]){vd[i] = true;dfs(i);}}
}int main()
{int m;int x, y;int cnt;while (~scanf("%d", &n) && n != 0){scanf("%d", &m);memset(a, 0, sizeof(a));memset(vd, 0, sizeof(vd));for (int i = 0; i < m; i++){scanf("%d %d", &x, &y);a[x][y] = a[y][x] = true;}cnt = 0;for (int i = 1; i <= n; i++){if (!vd[i]){vd[i] = true;cnt++; // 计算连通块数dfs(i);}}printf("%d\n", cnt-1); // 连通块数 减一}return 0;
}
HDU - 1232 畅通工程 【连通块】相关推荐
- HDU 1232畅通工程
畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- HDU 1232 - 畅通工程
畅通工程 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇.省政府"畅通工程"的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只 ...
- [ACM] hdu 1232 畅通工程(并查集)
Problem Description 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇.省政府"畅通工程"的目标是使全省任何两个城镇间都可以实现交通 ...
- hdu 1232 畅通工程
Problem Description 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇.省政府"畅通工程"的目标是使全省任何两个城镇间都可以实现交通 ...
- HDU 1232 -畅通工程(并查集)
题目 http://acm.hdu.edu.cn/showproblem.php?pid=1232 代码 #include <iostream> #include <algorith ...
- hdu 1232 畅通工程 最小生成树 并查集
1232的连接:http://acm.hdu.edu.cn/showproblem.php?pid=1232 #include <iostream>#include <cstdio& ...
- 并查集 HDOJ 1232 畅通工程
题目传送门 1 /* 2 并查集(Union-Find)裸题 3 并查集三个函数:初始化Init,寻找根节点Find,连通Union 4 考察:连通边数问题 5 */ 6 #include <c ...
- 杭电1232 畅通工程
Problem Description 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇.省政府"畅通工程"的目标是使全省任何两个城镇间都可以实现交通 ...
- HDOJ 1874 HDU 1874 畅通工程续 ACM 1874 IN HDU
MiYu原创, 转帖请注明 : 转载自 ______________白白の屋 题目地址: http://acm.hdu.edu.cn/showproblem.php?pid=1874 ...
最新文章
- git的基本使用命令操作
- c# Ajax后台动态分页
- 【leetcode】
- k8s master节点参与调度(去除NoSchedule污点)
- AtCoderGC038B - Sorting a Segment 数据结构 + RMQ
- 从零开始学电脑办公_每天学一点 7天学会使用电脑办公操作
- C语言丨格式化屏幕输出(二)——日历
- Delphi中Chrome Chromium、Cef3学习笔记(三)
- xp系统设置锁定计算机,XP系统电脑如何设置自动锁屏?
- MAXWELL软件的初步使用
- DIY智能车赛优胜奖开源作品——手机遥控麦克纳姆轮小车(1)
- jsoniter与原生json对比
- 能耗分项计量监测系统在某大型公建中的应用
- Android日历阴阳历转换的实现(包括日期选择器)
- 二、T100库存杂收、杂发、报废管理篇
- 什么?你居然不会微信分身
- 驱动程序开发:无设备树和有设备树的platform驱动
- 【苦练基本功】代码整洁之道 pt3(第7章-第9章)
- android开发语言列表及对应简写
- 移植Linux-3.4.2过程学习笔记1——串口打印乱码问题