program bzoj1015;
{$inline on} const maxn=; type node=record
togo,next:longint;
end; var tot,n,m,d,cnt:longint;
father,head,q,ans:array [..maxn] of longint;
used,des:array [..maxn] of boolean;
e:array [..maxn] of node; function find(x:longint):longint; inline;
begin
if father[x]=x then exit(x);
if father[father[x]]=x then exit(father[x]);
find:=find(father[x]);
father[x]:=find;
end; procedure ins(u,v:longint); inline;
begin
inc(cnt);
e[cnt].togo:=v; e[cnt].next:=head[u]; head[u]:=cnt;
inc(cnt);
e[cnt].togo:=u; e[cnt].next:=head[v]; head[v]:=cnt;
end; procedure add(x:longint); inline;
var i,p,q:longint;
begin
i:=head[x];
p:=find(x);
while i<> do
begin
if used[e[i].togo] then
begin
q:=find(e[i].togo);
if p<>q then
begin
father[q]:=p;
dec(tot);
end;
end;
i:=e[i].next;
end;
end; procedure main;
var i,x,y:longint;
begin
read(n,m);
cnt:=;
for i:= to n- do father[i]:=i;
for i:= to m do
begin
read(x,y);
ins(x,y);
end;
read(d);
for i:= to d do
begin
read(q[i]);
des[q[i]]:=true;
end;
for i:= to n- do
if not(des[i]) then
begin
inc(tot);
add(i);
used[i]:=true;
end;
ans[d+]:=tot;
for i:=d downto do
begin
inc(tot);
add(q[i]);
used[q[i]]:=true;
ans[i]:=tot;
end;
for i:= to d+ do
writeln(ans[i]);
end; begin
main;
end.

BZOJ 1015的更多相关文章

  1. BZOJ 1015 题解

    1015: [JSOI2008]星球大战starwar Description 很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治者整个星系.某一天,凭着一个偶然的机遇,一支反抗军摧毁了帝 ...

  2. BZOJ 1015: [JSOI2008]星球大战starwar 并查集

    1015: [JSOI2008]星球大战starwar Description 很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治者整个星系.某一天,凭着一个偶然的机遇,一支反抗军摧毁了帝 ...

  3. BZOJ 1015 星球大战

    Description 很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治者整个星系.某一天,凭着一个偶然的机遇,一支反抗军摧毁了帝国的超级武器,并攻下了星系中几乎所有的星球.这些星球通过 ...

  4. BZOJ 1015 [JSOI2008]星球大战starwar

    1015: [JSOI2008]星球大战starwar Time Limit: 3 Sec  Memory Limit: 162 MBSubmit: 3551  Solved: 1581[Submit ...

  5. bzoj 1015: [JSOI2008]星球大战starwar (逆向思维+并查集)

    链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1015 思路: 题目是要我们对当前图拆掉k个点,问,每拆一个点后图中有多少个联通块,我们可以逆 ...

  6. BZOJ 1015: [JSOI2008]星球大战starwar(并查集求连通块+离线处理)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1015 题意: 思路:好题啊!!! 这道题目需要离线处理,先把所有要删的点给保存下来,然后逆序加点,这 ...

  7. BZOJ 1015 星球大战starwar 逆向并查集

    题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=1015 题目大意: 很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治者整个 ...

  8. bzoj 1015 维护连通块个数,离线并查集

    水. /************************************************************** Problem: 1015 User: idy002 Langua ...

  9. bzoj 1015 星球大战starwar

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1015 题解: 如果按照题目的意思,每次删点.删边太困难了……于是采用逆向思维,构造出最后的 ...

  10. BZOJ 1015 并查集+离线倒序

    统计块个数写错了调了好久啊,BZOJ1696的弱化版本. #include <iostream> #include <cstring> #include <algorit ...

随机推荐

  1. Android 支付宝钱包手势password裂纹战斗

    底 随着移动互联网和手机屏幕越做越大的普及等..购物在移动设备上.消费是必不可少的人们习惯于生活. 随着这股浪潮的兴起,安全.便捷的移动支付的需求也越来越大.故,各大互联网公司纷纷推出了移动支付平台. ...

  2. POJ 1797 Heavy Transportation 最短路变形(dijkstra算法)

    题目:click here 题意: 有n个城市,m条道路,在每条道路上有一个承载量,现在要求从1到n城市最大承载量,而最大承载量就是从城市1到城市n所有通路上的最大承载量.分析: 其实这个求最大边可以 ...

  3. Java学习之finally

    如果catch中有return语句,finally里面的语句还会执行吗? 会执行,在return语句的中间执行 public class Test{ public static void main(S ...

  4. Java中单态设计模式

    Java中单态设计模式 2011-09-23 16:38:46|  分类: Java |  标签:technology!  |举报|字号 订阅     此博文是转自新浪博客中一名叫做"俊俊的 ...

  5. mysql中varchar最长多少

    4.0版本以下,varchar(20),指的是20字节,如果存放UTF8汉字时,只能存6个(每个汉字3字节) 5.0版本以上,varchar(20),指的是20字符,无论存放的是数字.字母还是UTF8 ...

  6. Maven本地

    <localRepository></localRepository>

  7. Linux软件安装包中devel与非devel包之间的区别

    带devel(develop)的包,俗称开发包.功能上与普通包相同,但体积更大使用rpm -qi看看这两类包的区别: # rpm -qi glibc-devel-2.12-1.149.el6.x86_ ...

  8. HDOJ 1003 Max Sum(线性dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1003 思路分析:该问题为最大连续子段和问题,使用动态规划求解: 1)最优子结构:假设数组为A[0, 1 ...

  9. installation - How to install Synaptic Package Manager? - Ask Ubuntu

    installation - How to install Synaptic Package Manager? - Ask Ubuntu How to install Synaptic Package ...

  10. 人生新开始——第一天上班

    今天是我正式上班的第一天,对今天要做的工作充满期待,对将要面对的同事们也充满期待.这天起的很早,7点钟就开始睡不着了,忙着起来整理东西,看着时间还早,便打开电脑听起CNN News,练习听力,一听就听 ...