happystone

niuniu

pku 2524

 1#include<iostream>
 2using namespace std;
 3#define N 50000
 4int parent[N],rank[N],h[N];
 5int init(int x)
 6{
 7 parent[x]=x;
 8 rank[x]=0;
 9 return 0;
10}

11int find(int i)
12{
13 if(parent[i]!=i)
14  parent[i]=find(parent[i]);
15 return parent[i];
16}

17int hebing(int x,int y)
18{
19 x=find(x);
20 y=find(y);
21 if(x==y)
22  return y;
23 if(rank[x]<rank[y])
24 {
25  parent[x]=y;
26  return y;
27 }

28 else
29 {
30
31  parent[y]=x;
32  return x;
33  if(rank[x]=rank[y])
34  rank[x]++;
35  return x;
36 }

37}

38struct ss
39{
40 int i;
41 int j;
42}
s[N];
43int main()
44{
45
46 int m,n,k,sum,num,p;
47 while(cin>>n>>m)
48 {
49  num=0;
50  for(k=0;k<m;k++)
51  {
52   cin>>s[k].i>>s[k].j;
53   init(s[k].i);
54   init(s[k].j);
55   parent[s[k].j]=parent[s[k].i];
56  }

57
58  
59  sum=n+sum-num;
60  cout<<sum<<" "<<num<<" "<<n<<endl;
61 }

62 return 0;
63}

64

posted on 2010-08-09 22:20 玉中石 阅读(147) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理