#include<stdio.h>
#include<cstring>
int father[1001];
int n,m;
int find(int c){
if(father[c]!=c)
father[c]=find(father[c]);
return father[c];
}
void uun(int a,int b){
int aa=find(a);
int bb=find(b);
father[aa]=bb;
}
int main(){
int i,j;
int a,b;
while(scanf("%d",&n)&&n){
scanf("%d",&m);
for(i=1;i<=n;i++)
father[i]=i;
for(i=1;i<=m;i++){
scanf("%d%d",&a,&b);
uun(a,b);
}
int res=0;
for(i=1;i<=n;i++)
if(father[i]==i)
++res;
res--;
printf("%d\n",res);
}
return 0;
}
hdu1232 畅通工程
最新推荐文章于 2021-09-23 13:41:44 发布