标签:should any ref rem cep log who lex follow
Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 327680/102400 K (Java/Others)
Total Submission(s): 25168 Accepted Submission(s): 9045
1 #include <cstdio> 2 #include <cstdlib> 3 #include <climits> 4 5 const int MAX = 10000005; 6 int pre[MAX],rank[MAX],maxx; 7 8 9 void init(){ 10 int i; 11 for(i=1;i<MAX;++i){ 12 pre[i] = i; 13 rank[i] = 1; 14 } 15 } 16 17 int root(int x){ 18 if(x!=pre[x]){ 19 pre[x] = root(pre[x]); 20 } 21 return pre[x]; 22 } 23 24 void merge(int x,int y){ 25 int fx = root(x); 26 int fy = root(y); 27 if(fx!=fy){ 28 pre[fx] = fy; 29 rank[fy] += rank[fx];//更改对应元素的秩 30 if(rank[fy]>maxx)maxx = rank[fy];//更新最大值 31 } 32 } 33 34 35 int main(){ 36 //freopen("in.txt","r",stdin); 37 int i,n,x,y; 38 while(scanf("%d",&n)!=EOF){ 39 if(n==0){ 40 printf("1\n"); 41 continue; 42 } 43 init(); 44 maxx = INT_MIN; 45 for(i=0;i<n;++i){ 46 scanf("%d %d",&x,&y); 47 merge(x,y); 48 } 49 printf("%d\n",maxx); 50 } 51 return 0; 52 }
HDU1865--More is better(统计并查集的秩(元素个数))
标签:should any ref rem cep log who lex follow
原文地址:http://www.cnblogs.com/liuzhanshan/p/6094619.html