标签: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