C0573 绿洲引水工程
绿洲引水工程
丝绸之路沿线有 n 个绿洲,编号 1 到 n,规划修建 m 条双向引水渠(可能不连通)。其中一部分绿洲已经拥有稳定的水源,称为“水源绿洲”。水源绿洲可以通过引水渠将水输送到直接相连的绿洲,被输送到的绿洲又会继续向与其相连的绿洲送水,如此层层传递。
请你计算最终有多少个绿洲能够获得水源。
输入格式
第一行两个整数 n m (2 ≤ n ≤ 105,0 ≤ m ≤ min(105, n*(n-1)/2) )。
第二行一个整数 k (1 ≤ k ≤ n),表示水源绿洲的个数。
第三行 k 个整数,表示水源绿洲的编号(1~n 之间,两两不同)。
接下来 m 行,每行两个整数 u v,表示一条引水渠连接 u 和 v。
输出格式
共一行,一个整数,表示可以获得水源的绿洲总数。
输入样例#1
6 4
2
1 4
1 2
2 3
4 5
3 6
输出样例#1
6
输入样例#2
4 2
1
2
1 2
3 4
输出样例#2
2
提示
注意图可能不连通,多源 BFS/DFS 均可。使用邻接表存储图,注意空间。