SZ#G8U34. 城市供电

提交4 通过1
通过率25%
时间限制2000ms
内存限制512MiB
    ID: 12059 传统题 2000ms 512MiB 尝试: 4 已通过: 1 难度: 普及+/提高- 上传者: 标签>GESPGESP强化C++c++编程题并查集离线删边

题目描述

题目描述

小泽负责维护一个国家的供电网络。这个国家有 NN 座城市和 MM 座发电站,把它们统称为“地点”。地点编号为 11N+MN+M:其中 11NN 是城市,N+1N+1N+MN+M 是发电站。

全国共有 EE 条输电线。第 ii 条输电线双向连接地点 UiU_i 与地点 ViV_i。如果从某座城市出发,沿着若干条仍可使用的输电线能够到达至少一座发电站,就称这座城市处于通电状态。

接下来将发生 QQ 次事故。第 ii 次事故会切断编号为 XiX_i 的输电线,使这条输电线不能再使用;一条输电线一旦被切断,在之后的所有事故中都会一直保持断开。

请计算每次事故结束后,仍然处于通电状态的城市数量。注意只统计城市,不统计发电站。

输入格式

第一行输入三个整数 N,M,EN,M,E

接下来 EE 行,第 ii 行输入两个整数 Ui,ViU_i,V_i

随后输入一个整数 QQ

接下来 QQ 行,第 ii 行输入一个整数 XiX_i

输出格式

输出 QQ 行。第 ii 行输出第 ii 次事故结束后仍然通电的城市数量。

5 5 10
2 3
4 10
5 10
6 9
2 9
4 8
1 7
3 6
8 10
1 8
6
3
5
8
10
2
7
4
4
2
2
2
1

样例说明 #1

六次事故后仍通电的城市数依次为 4,4,2,2,2,14,4,2,2,2,1;有些断线事故不会立刻改变通电城市数。

1 1 1
1 2
1
1
0

样例说明 #2

唯一的输电线被切断后,城市无法到达发电站,因此通电城市数为 00

2 1 3
1 3
2 3
1 2
2
1
2
2
0

数据范围与约定

1N,M1\le N,MN+M2×105N+M\le2\times10^51QE5×1051\le Q\le E\le5\times10^51Ui<ViN+M1\le U_i<V_i\le N+M。所有端点对 (Ui,Vi)(U_i,V_i) 互不相同,1XiE1\le X_i\le E 且所有 XiX_i 互不相同。输入中的所有数均为整数。