首页 > 其他 > 详细

HDU 1856 - More is better

时间:2016-06-02 00:46:24      阅读:117      评论:0      收藏:0      [点我收藏+]

裸的并查集

 

 1 #include <iostream>
 2 #include <cstdio>
 3 using namespace std;
 4 const int maxn=10000000;
 5 int n;
 6 int f[maxn+5],v[maxn+5];
 7 int sf(int x){
 8     return f[x]==x? x: f[x]=sf(f[x]);
 9 }
10 int a,b,fa,fb;
11 int main()
12 {
13     while(~scanf("%d",&n))
14     {
15         for(int i=1;i<=maxn;i++) f[i]=i,v[i]=0;
16         for(int i=1;i<=n;i++)
17         {
18             scanf("%d%d",&a,&b);
19             fa=sf(a); fb=sf(b);
20             f[fa]=fb;
21         }
22         int ans=0;
23         for(int i=1;i<=maxn;i++)
24         {
25             fa=sf(i);
26             v[fa]++;
27             ans=max(ans,v[fa]);
28         }
29         printf("%d\n",ans);
30     }
31 }

 

HDU 1856 - More is better

原文:http://www.cnblogs.com/nicetomeetu/p/5551564.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!