how many tables

来源:互联网 发布:怎么理解网络协议 编辑:程序博客网 时间:2024/05/17 03:58


//java

//http://acm.hdu.edu.cn/showproblem.php?pid=1213
import java.util.Arrays;
import java.util.Scanner;
public class Main {
static Scanner inScanner=new Scanner (System.in);
static int peo;
static int[] rel=new int[1010];
static int count;
static int findrel(int t){
if(rel[t]==-1)
return t;
return findrel(rel[t]);
}
static void addp(int x,int y){
int po1=findrel(x);
int po2=findrel(y);
if(po1!=po2)
rel[po1]=po2;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
while(inScanner.hasNext()){
int num=inScanner.nextInt();
while(num--!=0){
count=0;
peo=inScanner.nextInt();
Arrays.fill(rel, -1);
int fri=inScanner.nextInt();
while(fri--!=0){
int x=inScanner.nextInt();
int y=inScanner.nextInt();
addp(x, y);
}
for(int i=1;i<=peo;i++){
if(rel[i]==-1){
count++;
}
}
System.out.println(count);
}
}
}


}
0 0
原创粉丝点击