畅通工程

时间限制:2000 ms  |  内存限制:65535 KB
难度:3
描述
某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要互相间接通过道路可达即可)。问最少还需要建设多少条道路?

输入
测试输入包含若干测试用例。每个测试用例的第1行给出两个正整数,分别是城镇数目N ( < 1000 )和道路数目M;随后的M行对应M条道路,每行给出一对正整数,分别是该条道路直接连通的两个城镇的编号。为简单起见,城镇从1到N编号。 
注意:两个城市之间可以有多条道路相通,也就是说
3 3
1 2
1 2
2 1
这种输入也是合法的
当N为0时,输入结束,该用例不被处理。
输出
对每个测试用例,在1行里输出最少还需要建设的道路数目。
样例输入
4 2
1 3
4 3
3 3
1 2
1 3
2 3
5 2
1 2
3 5
999 0
0
样例输出
1
0
2
998
简单并查集!
AC码:
#include<stdio.h>
int f[1003];
int find(int i)
{if(f[i]!=i)f[i]=find(f[i]);return f[i];
}
void make(int a,int b)
{int p=find(a);int q=find(b);f[p]=q;
}
int main()
{int n,m,i,count=0,a,b;while(scanf("%d",&n)&&n){scanf("%d",&m);for(i=1;i<=n;i++)f[i]=i;for(i=0;i<m;i++){scanf("%d%d",&a,&b);make(a,b);}count=0;for(i=1;i<=n;i++){if(f[i]==i)count++;}printf("%d\n",count-1);}return 0;
}

NYOJ 608 畅通工程相关推荐

  1. NYOJ 608 畅通工程 并查集

    畅通工程 时间限制:2000 ms  |  内存限制:65535 KB 难度:3 描述 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇.省政府"畅通工程&qu ...

  2. [kuangbin带你飞]专题六 最小生成树 L - 还是畅通工程 (简单最小生成树)

    L - 还是畅通工程 题目链接:https://vjudge.net/contest/66965#problem/L 题目: 某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离.省政府&qu ...

  3. 并查集 HDOJ 1232 畅通工程

    题目传送门 1 /* 2 并查集(Union-Find)裸题 3 并查集三个函数:初始化Init,寻找根节点Find,连通Union 4 考察:连通边数问题 5 */ 6 #include <c ...

  4. 畅通工程//最小生成树prim

    题目: 畅通工程 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total S ...

  5. 【1863】畅通工程 (HDU)

     畅通工程 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Su ...

  6. HDOJ 1874 HDU 1874 畅通工程续 ACM 1874 IN HDU

    MiYu原创, 转帖请注明 : 转载自 ______________白白の屋 题目地址:          http://acm.hdu.edu.cn/showproblem.php?pid=1874 ...

  7. 畅通工程 HDU - 1233 

    某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离.省政府"畅通工程"的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可 ...

  8. Kruskal HDOJ 1233 还是畅通工程

    题目传送门 1 /* 2 最小生成树之kruskal算法--并查集(数据结构)实现 3 建立一个结构体,记录两点和它们的距离,依照距离升序排序 4 不连通就累加距离,即为最小生成树的长度 5 */ 6 ...

  9. hdu1879 继续畅通工程 最小生成树

    继续畅通工程 此题明显属于最小生成树的题目 关于最小生成树,有两种方法,一种是Kruskal方法,一种是Prim算法,第一种用并查集即可实现 1 /* 2 hdu1879 3 2013-03-18 1 ...

最新文章

  1. string日期格式化_java面向对象---日期类
  2. hashcode的作用_看似简单的hashCode和equals面试题,竟然有这么多坑!
  3. 独家 | 如何解决深度学习泛化理论
  4. 关于apache camel的消息转发效率
  5. vue通信方法EventBus的实现
  6. 03_pandas布尔索引、isin()筛选、设置值at和iat,loc,reindex、dropna、fillna,isna、求平均值mean、Apply函数、value_counts
  7. c语言冒泡排序字母排序,排序与查找之冒泡排序篇(C语言实现)
  8. iOS精品源码,GHConsole图片浏览器圆形进度条音视频传输连击礼物弹出动画
  9. 通过jQuery设置全局Ajax加载时呈现Loading
  10. 结合读取opml ,把数据链接到treeview
  11. 图片的单点触摸移动与多点触摸移动缩放
  12. Boost.Asio Library
  13. 【Java没基础】关于stream has already been operated upon or closed问题
  14. k线顶分型 python_日线顶分型是什么意思?k线顶分型图解与操作要领
  15. VBA数据类型和类型转换函数
  16. 计算机的发展与什么息息相关,第一单元第二课《计算机的发展与应用》.doc
  17. 计算机生成的精美图形,太震撼啦!!!
  18. 九龙证券|港股盘中暴涨110%!多股涨停,有色、汽车板块爆发!
  19. SYN6288移植51程序
  20. 问题 G: 差值求和 (差分)

热门文章

  1. SQL优化常用方法9
  2. android:textAppearance
  3. Citrix Director
  4. POJ 3461 kmp 应用
  5. 疯了,家里的网速慢的不是一星半点
  6. search strategies
  7. approach for doing things
  8. 写文章的时候,还是应该现在typora里面写,之后放在latex...因为typora好改
  9. research meeting updates points
  10. lesson from kong fu