#D. 损坏的城市(damage.cpp)

    Type: Default 1000ms 256MiB

损坏的城市(damage.cpp)

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

Background

Special for beginners, ^_^

Description

小C的国家遭受了一场地震。有一些城市遭到了损坏,但幸运地,所有城市间的道路都还能使用。

小C的国家有P(1 <= P <= 30,000)个城市,编号1..P。有C(1 <= C <= 100,000)条双向路经联接这些城市,编号为1..C.。路经i连接城市a_i和b_i (1 <= a_i<= P;1 <= b_i <= P)。需要注意的是,路经可能连接a_i到它自己,两个城市之间可能有多条路经。

国家首都在编号为1的城市。N (1 <= N <= P)个在不同城市的人通过手机短信report_j(2 <= report_j <= P)告诉小C他们的城市(report_j)没有损坏,但是它们无法到达首都(到达首都的路径上有损坏的城市)。请你帮小C找出至少有多个不可能达到首都的城市(这个数目包括已经损坏的城市)?

Format

Input

第1行: 三个空格分开的数: P, C, 和 N

接下来C行, 每行两个空格分开的数: a_i 和 b_i

接下来N行,每行一个数 report_j

Output

输出一行一个数,表示最少不能到达首都的城市的数目(包括损坏的城市)。

Samples

4 3 1 
1 2 
2 3 
3 4 
3
3

【样例1说明】

当城市2遭到损坏时,城市3无法到达首都,总共城市2, 3, 4无法到达首都。

其余城市遭到损坏不可能使得3号城市无法到达首都。

故最少不能到达首都的城市数为3

Limitation

对于 20% 的数据:1 <= N<=P <= 10,1 <= C <= 50 ~~

对于所有数据:1 <= N<=P <= 30,000,1 <= C <= 100,000

2023CPS-J 测试1

Not Attended
Status
Done
Rule
IOI
Problem
4
Start at
2023-10-3 9:00
End at
2023-10-7 13:00
Duration
100 hour(s)
Host
Partic.
13