#ARC150C. 路径与子序列

路径与子序列

路径与子序列

时间限制:2s
空间限制:1024MB

题目描述

有一个含 NN 个顶点、MM 条边的连通无向图 GG,顶点编号为 11 到 NN,第 ii 条边连接顶点 UiU_i 和 ViV_i。另给定长度为 NN 的整数序列 A=(A1,A2,…,AN)A=(A_1,A_2,\ldots,A_N) 与长度为 KK 的整数序列 B=(B1,B2,…,BK)B=(B_1,B_2,\ldots,B_K)。

判断下列条件是否成立:对于图中从顶点 11 到顶点 NN 的任意一条简单路径 v=(v1,v2,…,vt)v=(v_1,v_2,\ldots,v_t),其中 v1=1,vt=Nv_1=1,v_t=N,序列 BB 都是 (Av1,Av2,…,Avt)(A_{v_1},A_{v_2},\ldots,A_{v_t}) 的子序列。子序列中的元素不要求连续。

输入格式

第一行三个整数 N,M,KN,M,K。

接下来 MM 行,第 ii 行两个整数 Ui,ViU_i,V_i,表示一条无向边。

下一行 NN 个整数 A1,A2,…,ANA_1,A_2,\ldots,A_N。

最后一行 KK 个整数 B1,B2,…,BKB_1,B_2,\ldots,B_K。

输出格式

若条件成立,输出 Yes;否则输出 No。

样例输入 1

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

样例输出 1

Yes

样例输入 2

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

样例输出 2

No

样例输入 3

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

样例输出 3

Yes

数据范围

  • 2≤N≤1052\le N\le10^5;
  • 1≤K≤N1\le K\le N;
  • N−1≤M≤2×105N-1\le M\le2\times10^5;
  • 1≤Ui<Vi≤N1\le U_i<V_i\le N,且没有重边;
  • 1≤Ai,Bi≤N1\le A_i,B_i\le N;
  • 图 GG 连通。
子任务编号 分值 特殊限制
1 10 N≤10N\le10
2 15 GG 是一棵树
3 K=1K=1
4 30 N≤2000N\le2000 且 M≤4000M\le4000
5 无特殊限制