标签:des blog http io ar os sp java for
Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 327680/102400 K (Java/Others)
Total Submission(s): 15434 Accepted Submission(s): 5667
#include<iostream> #include<cstdio> #include<cstring> #include<string> #include<cmath> #include<cstdlib> #include<algorithm> #define N 10000000 int father[N],num[N]; void initial()/*初始化*/ { int i; for(i=1;i<=N;i++) { father[i]=i; num[i]=1;/*开始时数量都为1,根节点为自己*/ } } int find(int x) /*寻找根节点*/ { if(father[x]!=x) father[x]=find(father[x]); return father[x]; } void merge(int a,int b)/*合并a和b*/ { int p=find(a); int q=find(b); if(p!=q) { father[p]=q; num[q]+=num[p];/*合并集合中元素个数*/ } } int main() { int n,a,b,i,sum,max; while(scanf("%d",&n)!=EOF) { if(n==0) { printf("1\n"); continue; } max=0; initial(); /*初始化*/ for(i=0;i<n;i++) { scanf("%d%d",&a,&b); if(a>max) max=a; if(b>max) max=b; merge(a,b); /*合并集合*/ } int Max=0; for(i=1;i<=max;i++) if(num[i]>Max) /*查找最大值*/ Max=num[i]; printf("%d\n",Max); } //system("pause"); return 0; }
标签:des blog http io ar os sp java for
原文地址:http://www.cnblogs.com/a972290869/p/4101077.html