zoj2833-Friendship
来源:互联网 发布:网络教学的排行 编辑:程序博客网 时间:2024/09/21 09:02
#include<stdio.h>int father[100001];int fine(int x)//压缩,只用压缩时间320{int r=x,j;while(father[r]>0)r=father[r];//r是根while(r!=x){ j=father[x]; father[x]=r; x=j;}return r;}void weightmerge(int x,int y)//只用折叠时间为280//折叠压缩一起用260{int temp;int ix,iy; ix=fine(x);iy=fine(y);temp=father[ix]+father[iy];if(ix!=iy)if(father[ix]>father[iy])//ix的结点少,以结点多的为父节点{father[iy]=temp;father[ix]=iy;//iy为父指针}else{father[ix]=temp;father[iy]=ix;//ix为父指针}}int main(){int N,M,icase=1;char c;bool flag=false;while(scanf("%d%d",&N,&M)!=EOF){if(flag)printf("\n");flag=false;for(int i=1;i<=N;i++){father[i]=-1;}while(M--){int re1,re2,q;scanf("%*c");scanf("%c",&c);if(c=='M'){scanf("%d%d",&re1,&re2);weightmerge(re1,re2);}else{if(!flag){printf("Case %d:\n",icase++);flag=true;}scanf("%d",&q);printf("%d",-father[fine(q)]);if(M!=1)printf("\n");}}}return 0;}
- zoj2833-Friendship
- ZOJ2833---Friendship
- zoj2833 Friendship //并查集
- ZOJ2833 Friendship(并查集)
- zoj2833
- Friendship
- Friendship
- Friendship
- Friendship
- Friendship
- ZOJ2833 并查集
- zoj2833-并查集
- A - Friendship
- POJ1815 Friendship
- A - Friendship
- POJ1815 Friendship
- Friendship POJ
- Bridges of Friendship
- boost exception
- 如何使用Core Text计算一段文本绘制在屏幕上之后的高度
- boost uuid
- 好纠结的生活
- jsp隐式对象
- zoj2833-Friendship
- 水仙花数
- GTK安装出错
- C++ 基础总结
- LDAP中CN,OU,DC的含义
- C++虚函数表解析(转) ——写的真不错
- 【Virtual C++ 3D游戏开发】前置知识 一 <工作环境及Win项目初窥>
- 解决android 模拟器上网问题
- assert用法总结