标签:char problem ott building logs sample initial ted color
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 5935 Accepted Submission(s): 1838
1 #include <algorithm> 2 #include <cstring> 3 #include <cstdio> 4 5 using namespace std; 6 7 const int N(30005); 8 int fa[N],sum[N],beh[N]; 9 10 int find(int x) 11 { 12 if(fa[x]==x) return x; 13 int dad=fa[x]; 14 fa[x]=find(fa[x]); 15 beh[x]+=beh[dad]; 16 return fa[x]; 17 } 18 void combine(int x,int y) 19 { 20 x=find(x),y=find(y); 21 if(x==y) return ; 22 beh[x]=sum[y]; 23 sum[y]+=sum[x]; 24 fa[x]=y; 25 } 26 void init() 27 { 28 for(int i=0;i<N;i++) fa[i]=i,sum[i]=1,beh[i]=0; 29 } 30 31 int main() 32 { 33 for(int p,u,v;~scanf("%d",&p);) 34 { 35 init(); 36 for(char ch[2];p--;) 37 { 38 scanf("%s%d",ch,&u); 39 if(ch[0]==‘M‘) 40 { 41 scanf("%d",&v); 42 combine(u,v); 43 } 44 else find(u),printf("%d\n",beh[u]); 45 } 46 } 47 return 0; 48 }
标签:char problem ott building logs sample initial ted color
原文地址:http://www.cnblogs.com/Shy-key/p/7413765.html