cf 209 D. Connected Components
来源:互联网 发布:怎么关闭139端口 编辑:程序博客网 时间:2024/05/21 12:24
http://codeforces.com/problemset/problem/292/d
题意就是给你一个无向图;
然后每次询问l,r
表示吧l~r这段区间全部删掉最后会有几个联通块;
那我们直接在结构体里面搞一个并查集;
然后一个前缀一个后缀;
#include<iostream>#include<cstdio>#include<map>#define Ll long longusing namespace std;const int N=500+5,M=1e4+5;struct K{ int f[N],v; int get(int x){return !f[x]?x:f[x]=get(f[x]);} void add(int x,int y){ int xx=get(x),yy=get(y); if(xx==yy)return; f[xx]=yy; v++; }}L[M],R[M];int x[M],y[M];int n,m,w,a,b;int main(){ scanf("%d%d",&n,&m); for(int i=1;i<=m;i++)scanf("%d%d",&x[i],&y[i]); for(int i=1;i<=m;i++)L[i]=L[i-1],L[i].add(x[i],y[i]); for(int i=m;i>=1;i--)R[i]=R[i+1],R[i].add(x[i],y[i]); scanf("%d",&w); while(w--){ scanf("%d%d",&a,&b); K t=L[a-1]; for(int i=1;i<=n;i++)t.add(i,R[b+1].get(i)); printf("%d\n",n-t.v); }}
阅读全文
1 0
- cf 209 D. Connected Components
- Croc Round1 D Connected Components
- Codeforces 292D. Connected Components
- CF 427C. Checkposts Strongly connected components
- Codeforces 292D Connected Components (并查集)
- CodeForces 292D Connected Components (并查集+YY)
- CodeForces 292D Connected Components(并查集 前后缀)
- Connected Components Labeling
- Strongly Connected Components
- Count Connected Components
- Codeforces 292D [Connected Components]--并查集的巧妙应用
- CodeForces 292D Connected Components(变种并查集+预处理)
- Codeforces-292D:Connected Components(m个并查集)
- 4-1 Strongly Connected Components
- c编写Strongly Connected Components
- Connected Components Workbench 1.0.2 编译报错一例
- HDU 4654 k-edge connected components
- hdu 4654 k-edge connected components
- 欢迎使用CSDN-markdown编辑器
- unity提示can't add script解决办法
- 面向对象
- 集合的并、交和差运算的程序
- D. My pretty girl Noora(数论,dp)
- cf 209 D. Connected Components
- Boston Dynamics
- to 後面是接 Ving
- 利用灰度共生矩阵提取图像纹理特征
- 一致哈希性算法
- 仿QQ音乐网站
- 与java的邂逅
- Markdown语法书写CSDN技术博客
- HBuilder进阶