HDU2473 并查集的删除
来源:互联网 发布:python读取csv文件 编辑:程序博客网 时间:2024/05/21 17:43
并不是真正的删除,而是把删除的点连到了虚根#include<stdio.h>#include<iostream>#include<string.h>#include<algorithm>using namespace std;const int maxnum=1100010;int fa[maxnum];int temp[maxnum];int mark[maxnum];int n,m,w;void init(){ int i; for(i=0;i<n;i++) { fa[i]=i; temp[i]=i; } w=n;}int find(int x){ if(fa[x]==x) return x; else { return fa[x]=find(fa[x]); }}int main(){ int cnt=1; while(scanf("%d%d",&n,&m)!=EOF) { if(n==0&&m==0) break; init(); memset(mark,0,sizeof(mark)); int i; for(i=1;i<=m;i++) { char a; cin>>a; if(a=='M') { int c,d; scanf("%d%d",&c,&d); int x=find(temp[c]); int y=find(temp[d]); if(x==y) continue; else fa[x]=y; } else { int c; scanf("%d",&c); fa[w]=w; temp[c]=w++; } } int ans=0; for(i=0;i<n;i++) { int p=find(temp[i]); //cout<<p<<endl; if(mark[p]==0) { ans++; mark[p]=1; } } printf("Case #%d: %d\n",cnt++,ans); }}
0 0
- HDU2473 并查集的删除
- HDU2473 并查集的删除
- *hdu2473 (并查集的删除)
- hdu2473(并查集的删除)
- hdu2473 Junk-Mail Filter 并查集的删除
- hdu2473(并查集)
- hdu2473 Junk-Mail Filter (并查集删除节点)
- hdu2473 Junk-Mail Filter-并查集(删除)
- hdu2473之并查集
- HDU2473 - Junk-Mail Filter 利用虚拟数组实现删除并查集的节点
- HDU2473 删点并查集
- hdu2473 删点并查集
- Hdu2473 - Junk-Mail Filter - 并查集
- hdu2473 Junk-Mail Filter 并查集+删除节点+路径压缩
- hdu2473——Junk-Mail Filter(并查集+虚父节点的使用)
- Junk-Mail Filter(hdu2473并查集+删点操作)
- hdu2473 Junk-Mail Filter(删点并查集)
- 并查集的删除
- OpenCV目标识别
- 一切成功源于积累——20150513 美国4月零售数据不及预期 黄金1192-1218 2600点 短短2个小时
- 程序员——C语言之数据类型、基本运算、流程控制 易错知识点
- 黑马程序员——c语言基础:循环结构练习
- 黑马程序员————网路编程UDP和TCP协议
- HDU2473 并查集的删除
- 用:hover伪类设置导航菜单背景图片的感悟
- cocos2dx3.2+mac+LUA 安卓移植
- 设计模式之禅学习笔记--装饰者模式
- c++之const关键字
- android中用animation实现动画效果
- HDU ACM 3282 The Next Permutation->自从了解了STL,做题都省心多了
- SQL复习
- Container With Most Water - LeetCode 11