简单并查集
代码:
import java.util.*;import java.math.BigInteger;import java.math.BigDecimal;;interface def{ public static final int N=30005;}public class Main implements def{ int [] f = new int[N]; int fx(int x){ if(f[x]!=x){ f[x]=fx(f[x]); } return f[x]; } public static void main(String[] args) { Scanner in =new Scanner(System.in); int n,m; while(in.hasNext()){ n=in.nextInt(); m=in.nextInt(); if(n==0&&m==0){ break; } Main t=new Main(); for(int i=0;i0){ int tmp=in.nextInt(); int pre=-1,k; while((tmp--)>0){ k=in.nextInt(); if(pre!=-1){ t.f[t.fx(k)]=t.fx(pre); } pre=k; } } int ans=0; for(int i=0;i