1408050832-hd-畅通工程.cpp
来源:互联网 发布:mac os 10.11 cdr镜像 编辑:程序博客网 时间:2024/06/05 17:28
#include<stdio.h>
int guanxi[1100];
int find(int a)
{
if(guanxi[a]==a)
return a;
else
return guanxi[a]=find(guanxi[a]); //寻找关系
}
int lianjie(int a,int b)
{
int x,y;
x=find(a);
y=find(b); //找连接
guanxi[x]=y; //建立于最开始的那个元素的链接
}
int main()
{
int n,m;
int a,b;
int i,j,sum;
while(scanf("%d",&n),n)
{
scanf("%d",&m);
for(i=0;i<=1000;i++)
guanxi[i]=i; 讲所有元素初始化为只跟自己有关系
for(i=0;i<m;i++)
{
scanf("%d%d",&a,&b);
lianjie(a,b); 找连接
}
sum=0;
for(i=1;i<=n;i++)
if(guanxi[i]==i)
sum++;
printf("%d\n",sum-1);
}
return 0;
}
int guanxi[1100];
int find(int a)
{
if(guanxi[a]==a)
return a;
else
return guanxi[a]=find(guanxi[a]); //寻找关系
}
int lianjie(int a,int b)
{
int x,y;
x=find(a);
y=find(b); //找连接
guanxi[x]=y; //建立于最开始的那个元素的链接
}
int main()
{
int n,m;
int a,b;
int i,j,sum;
while(scanf("%d",&n),n)
{
scanf("%d",&m);
for(i=0;i<=1000;i++)
guanxi[i]=i; 讲所有元素初始化为只跟自己有关系
for(i=0;i<m;i++)
{
scanf("%d%d",&a,&b);
lianjie(a,b); 找连接
}
sum=0;
for(i=1;i<=n;i++)
if(guanxi[i]==i)
sum++;
printf("%d\n",sum-1);
}
return 0;
}
0 0
- 1408050832-hd-畅通工程.cpp
- 1408081640-hd-畅通工程.cpp
- 1408070943-hd-还是畅通工程.cpp
- 1408090823-hd-畅通工程再续.cpp
- 1408150824-hd-继续畅通工程.cpp
- 1410211655-hd-畅通工程
- hd 1232 畅通工程
- 畅通工程 hd 1232
- 畅通工程 hd 1233
- HD--1863畅通工程
- hd 1233 还是畅通工程
- 1502200905-hd-畅通工程续
- hd-1863:畅通工程prim
- hd-1863:畅通工程 Kruskal
- 畅通工程续 hd 1874
- hd 1874畅通工程续
- hd 1232 畅通工程 并查集
- HD 1875 畅通工程再续 【Kruskal】
- ARC forbids explicit message send of release 错误
- matlab小程序 画立方体
- 有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
- listView加载不同布局
- 工作流程管理的重要性
- 1408050832-hd-畅通工程.cpp
- 编辑距离
- 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
- 字符串格式化命令sprintf
- 【ThinkPHP学习】取值的方法总结
- MySql修改数据库编码为UTF8
- 一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
- POJ1159,Palindrome
- jquery 函数都无法使用