Ural 1671 - Anansi's Cobweb 倒过来做...并查集维护..
2013-08-05 13:35
387 查看
题意:
给出一个无向图..然后不断的删边..问每次删边后..整个图是由几个联通块组成的....
题解:
以前做过一个题..是CF上面的...是不断的删边..并询问某两点的最短路..当时的方法是倒过来..把删边过程看作加边过程..用floyd维护..
本题也类似..倒过来做把删边看作加边..由于是问联通块..用并查集维护...开始先将没出现在删边中的边连上..再从后往前加边...
Program:
给出一个无向图..然后不断的删边..问每次删边后..整个图是由几个联通块组成的....
题解:
以前做过一个题..是CF上面的...是不断的删边..并询问某两点的最短路..当时的方法是倒过来..把删边过程看作加边过程..用floyd维护..
本题也类似..倒过来做把删边看作加边..由于是问联通块..用并查集维护...开始先将没出现在删边中的边连上..再从后往前加边...
Program:
#include<iostream> #include<stdio.h> #include<cmath> #include<string.h> #include<stack> #include<queue> #include<algorithm> #define oo 1000000007 #define ll long long #define MAXN 100005 using namespace std; struct node { int x,y; }line[MAXN]; int father[MAXN],query[MAXN],ans[MAXN]; bool inquery[MAXN]; int getfather(int x) { if (father[x]==x) return x; return father[x]=getfather(father[x]); } int main() { int n,m,t; while (~scanf("%d%d",&n,&m)) { int i,p; for (i=1;i<=m;i++) scanf("%d%d",&line[i].x,&line[i].y); scanf("%d",&t); memset(inquery,false,sizeof(inquery)); for (i=1;i<=t;i++) scanf("%d",&query[i]),inquery[query[i]]=true; for (i=1;i<=n;i++) father[i]=i; p=n; for (i=1;i<=m;i++) if (!inquery[i]) { int fx,fy; fx=getfather(line[i].x); fy=getfather(line[i].y); if (fx!=fy) { p--; father[fx]=fy; } } for (i=t;i>=1;i--) { int fx,fy; fx=getfather(line[query[i]].x); fy=getfather(line[query[i]].y); ans[i]=p; if (fx!=fy) { p--; father[fx]=fy; } } for (i=1;i<=t;i++) printf("%d ",ans[i]); printf("\n"); } return 0; }
相关文章推荐
- URAL 1671 Anansi's Cobweb (并查集)
- Ural 1671. Anansi's Cobweb(并查集)
- Ural 1671 Anansi's Cobweb
- Ural 1671. Anansi's Cobweb
- Ural 1671. Anansi's Cobweb(并查集)
- URAL1671 Anansi's Cobweb(离线做 + 并查集)
- ural 1671 Anansi's Cobweb-并查集
- URAL1671 Anansi's Cobweb(离线做 + 并查集)
- Ural_1671. Anansi's Cobweb(并查集)
- Ural1671-Anansi's Cobweb
- HDU2120Ice_cream's world I(基础并查集)
- Chang'an(YY's string-模拟)
- KR C vs ANSI C (error C2143: syntax error : missing ';' before 'type' in Visual Studio 2008)
- poj2492 A Bug's Life(并查集)
- HDOJ1829 A Bug's Life(并查集)
- [POJ 2492] A Bug's Life [扩展并查集]
- The bundle does not contain an app icon for iPhone / iPod Touch of exactly '120x120' pixels
- hdu 2120 Ice_cream's world I (简单并查集 + 判环)
- poj 2492 A Bug's Life(种类并查集)
- poj2492 A Bug's Life 种类并查集