题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1213
//代码转自:(hdu id:
hncu1106101-王志盼 )
#include<stdio.h>
#define max 1005
int father[max];
void liantong(int i,int j);
int main()
{
int t,n,m,i,j,count;
scanf("%d",&t);
while(t--)
{
count=0;
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++)
father[i]=i;
while(m--)
{
scanf("%d%d",&i,&j);
liantong(i,j);
}
for(i=1;i<=n;i++)
if(father[i]==i)
count++;
printf("%d\n",count);
}
return 0;
}
void liantong(int x,int y)
{
while(x!=father[x])
x=father[x];
while(y!=father[y])
y=father[y];
if(x!=y)
father[x]=y;
}
//代码转自:(hdu id:
#include<stdio.h>
#define max 1005
int father[max];
void liantong(int i,int j);
int main()
{
}
void liantong(int x,int y)
{
}