#abc286g. [abc286_g]Unique Walk

[abc286_g]Unique Walk

问题描述

给定一个简单的连通无向图GG,其中有NN个顶点和MM条边。
GG的顶点编号为11,顶点22\ldots,顶点NN,其边编号为边11,边22\ldots,边MM。边ii连接顶点UiU_i和顶点ViV_i
还给定了边的子集:S=x1,x2,ldots,xKS=\\{x_1,x_2,\\ldots,x_K\\}

确定是否存在一条在GG上的路径,使得对于所有xinSx \\in S,边xx恰好出现一次。
该路径可以包含任意次数(可能为零)的不在SS中的边。

什么是路径?在无向图GG上的路径是由kk个顶点(kk是一个正整数)和(k1)(k-1)条边交替出现的序列,v1,e1,v2,,vk1,ek1,vkv_1,e_1,v_2,\ldots,v_{k-1},e_{k-1},v_k,其中边eie_i连接顶点viv_i和顶点vi+1v_{i+1}。该序列可以包含多次相同的边或顶点。当且仅当存在恰好一个1leqileqk11\\leq i\\leq k-1使得ei=xe_i=x时,称路径恰好包含边xx一次。

约束条件

  • 2leqNleq2times1052 \\leq N \\leq 2\\times 10^5
  • $N-1 \\leq M \\leq \\min(\\frac{N(N-1)}{2},2\\times 10^5)$
  • 1leqUi<VileqN1 \\leq U_i<V_i\\leq N
  • 如果ineqji\\neq j,则(Ui,Vi)neq(Uj,Vj)(U_i,V_i)\\neq (U_j,V_j)
  • GG是连通的。
  • 1leqKleqM1 \\leq K \\leq M
  • 1leqx1<x2<cdots<xKleqM1 \\leq x_1<x_2<\\cdots<x_K \\leq M
  • 输入中所有的值都是整数。

输入

输入以以下格式从标准输入给出:

NN MM U1U_1 V1V_1 U2U_2 V2V_2 vdots\\vdots UMU_M VMV_M KK x1x_1 x2x_2 ldots\\ldots xKx_K

输出

如果存在满足问题描述中条件的路径,则输出Yes;否则输出No


示例输入 1

6 6
1 3
2 3
3 4
4 5
4 6
5 6
4
1 2 4 5

示例输出 1

Yes

路径$(v_1,e_1,v_3,e_3,v_4,e_4,v_5,e_6,v_6,e_5,v_4,e_3,v_3,e_2,v_2)$满足条件,其中viv_i表示顶点iieie_i表示边ii
换句话说,路径按照1to3to4to5to6to4to3to21\\to 3\\to 4\\to 5\\to 6\\to 4\\to 3\\to 2的顺序遍历图GG上的顶点。
该路径满足条件,因为它恰好包含边11224455各一次。


示例输入 2

6 5
1 2
1 3
1 4
1 5
1 6
3
1 2 3

示例输出 2

No

不存在同时包含边112233各一次的路径,因此应输出No