一个大型通讯网络,共有 N 个节点,它们通过 M 条双向线路相连。不同的网络节点承载着不同的负荷。
通讯部门要求网络管理员按照网络节点承载负荷从大到小的顺序,依次关闭每个节点,测试每个阶段网络的连通性。每当关闭一个节点时,所有与该节点直接连接的线路也会关闭。
通讯部门要求管理员记录,每个关闭节点之前,当前的网络是否是连通的。即:从任意一个未被关闭的节点到达其他任何一个未被关闭的节点,可以正常通讯。
第 1 行输入 2 个整数 N,M。
接下来的 M 行,每行两个整数 U, V,描述连接节点 U 和 V 的线路。
最后 N 行,每行一个整数,表示按照负荷从大到小的顺序,依次关闭的节点编号。
输出 N 行,每行包含 Y 或 N,Y 表示网络连通,N 表示网络不连通。
5 4 1 2 1 5 5 3 5 4 4 5 2 3 1
Y Y N N Y
8 6 1 2 1 3 3 5 4 6 7 8 6 8 3 1 2 5 8 7 4 6
N N N N Y N Y Y
12 15 1 2 1 12 2 3 2 5 3 4 3 12 4 11 5 6 6 8 6 12 7 8 7 9 9 10 11 10 12 11 1 2 3 4 5 6 7 8 9 10 11 12
Y Y Y Y Y Y Y N Y Y Y Y
关闭结点 4 之前,网络是连通的,因此输出 Y。
关闭结点 5 之前,网络是连通的,因此输出 Y。
关闭结点 2 之前,网络已不连通,因此输出 N。
关闭结点 3 之前,网络已不连通,因此输出 N。
关闭结点 1 之前,网络是连通的(一个节点,默认是连通的),因此输出 Y。
对于 40\% 的数据,1 \leq N, M \leq 3000。
对于 100\% 的数据,1 \leq N, M \leq 2 \times 10^5,1 \le U,V \le N。