2013吉林通化邀请赛 1004 D-City 并查集求连通分支数
来源:互联网 发布:动态表单 数据库设计 编辑:程序博客网 时间:2024/06/04 18:31
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4496
将题目要查询的数倒过来求,先加一条边,保存cc(连通分支数) 然后再加一条边....
当合并两个等价类的时候连通分支减1
代码:
#include<set>#include<cstdio>#include<iostream>#include<algorithm>using namespace std;int p[10000];int u[100000];int v[100000];int ans[100000];int find(int x){ return p[x]==x?x:p[x]=find(p[x]);}int main(){ int n,m; int a,b; while(cin>>n>>m) { for(int i=0;i<n;i++) p[i]=i; for(int i=0;i<m;i++) { scanf("%d%d",&a,&b); u[i]=a; v[i]=b; } reverse(u,u+m); reverse(v,v+m); int cc=n; for(int i=0;i<m;i++) { int x=find(u[i]); int y=find(v[i]); if(x!=y) { p[x]=y; cc--; } ans[i]=cc; } for(int i=m-2;i>=0;i--) printf("%d\n",ans[i]); printf("%d\n",n); }}
- 2013吉林通化邀请赛 1004 D-City 并查集求连通分支数
- 2013 吉林通化邀请赛 D-City 离线型的并查集
- 2013 ACM-ICPC吉林通化全国邀请赛 && HDU 4496 D-City (并查集)
- 2013 ACM 通化邀请赛D.D-City 并查集
- 2013通化邀请赛C题D-City(并查集)
- HDUOJ 4496 通化邀请赛重现 D-City
- 2013 吉林通化邀请赛 Tutor 有点坑的水题
- 2013吉林通化邀请赛 1005 GCD and LCM
- 2013 ACM-ICPC吉林通化全国邀请赛部分题解
- HDU 4499 connon(2013吉林通化邀请赛G)
- HDU 4597 Play Game(2013吉林通化邀请赛H)
- 2013 ACM-ICPC吉林通化全国邀请赛(hdu 4493 - 4599)(并查集+dp+数学+判奇环+差分约束)
- hdu 4597 2013吉林通化邀请赛 Play Game 记忆化搜索
- 2013 ACM-ICPC吉林通化全国邀请赛——题目重现
- HDU 4496 Tutor 2013 ACM-ICPC吉林通化全国邀请赛E题
- HDU 4599 Dice 2013 ACM-ICPC吉林通化全国邀请赛J题
- HDU 4597 Play Game 2013 ACM-ICPC吉林通化全国邀请赛H题
- 2013 ACM-ICPC吉林通化全国邀请赛 && HDU 4597 Play Game (博弈 + 区间dp)
- css学无止境
- 第三课 物理地址和几条汇编指令
- 树、二叉树、满二叉树、完全二叉树概念分清
- Unix/Linux C++应用开发-C++基础概念"数组、指针和字符串"
- Linux下Nagios的安装与配置
- 2013吉林通化邀请赛 1004 D-City 并查集求连通分支数
- hdu3395 Special Fish (KM)
- 电子电路设计的基础知识
- poj分类1
- Android官网培训课:缩放View
- D3D9 Samples(1)--CreateDevice
- 【2075 复习时间】
- Android官网培训课:布局的变化
- UVA - 10131 Is Bigger Smarter?