#HK5127. 「RMI 2018」Colors

「RMI 2018」Colors

题目描述

题目译自 Romanian Master of Informatics 2018 Day2 T1 「Colors

你面对一个包含 NN 个节点和 MM 条边的连通无向图。初始时,每个节点 uu 有一个颜色 aua_u,用一个介于 11NN 的整数表示。你可以反复修改节点的颜色,通过操作 au=min(au,av)a_u = \min(a_u, a_v),其中 uuvv 是通过边连接的节点。

给定目标颜色数组 b1,bNb_1, \ldots b_N,你的任务是判断是否能通过上述操作将颜色数组 aa 转换为 bb

输入格式

每个输入文件包含多组测试数据,你需要分别回答每组测试数据。

第一行包含一个整数 TT,表示测试数据的数量。每组测试数据的结构如下:

  • 第一行包含两个整数 NNMM 分别表示节点数和边数。
  • 接下来一行包含 NN 个整数 a1,a2,,aNa_1, a_2, \ldots, a_N,表示初始颜色。
  • 接下来一行包含 NN 个整数 b1,b2,,bNb_1, b_2, \ldots, b_N,表示目标颜色。
  • 接下来的 MM 行每行包含两个整数 ui,viu_i, v_i,表示节点 uiu_iviv_i 之间有一条边。

输出格式

对于每组测试数据,如果可以通过上述操作将 aa 转换为 bb,输出一行 11,否则输出 00

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

1
0

在第一组测试数据中,图是一个包含 44 个节点和 44 条边的连通图。需要的操作如下:

  • a2=min(a2,a3)=2a_2 = \min(a_2, a_3) = 2
  • a1=min(a1,a2)=2a_1 = \min(a_1, a_2) = 2
  • a2=min(a2,a4)=1a_2 = \min(a_2, a_4) = 1

通过这些操作,初始颜色 a=[3,3,2,1]a = [3, 3, 2, 1] 可以转换为目标颜色 b=[2,1,2,1]b = [2, 1, 2, 1],因此输出 11

在第二组测试数据中,无法通过上述操作将初始颜色 a=[3,3,2,1]a = [3, 3, 2, 1] 转换为目标颜色 b=[1,2,2,1]b = [1, 2, 2, 1],因此输出 00

数据范围与提示

对于所有输入数据,满足:

  • 对于所有测试数据,N150000N \leq 150000M200000M \leq 200000
  • 所有测试数据组的 NN 之和 300000\leq 300000MM 之和 400000\leq 400000
  • 对于所有 1iN1 \leq i \leq N1ai,biN1 \leq a_i,b_i \leq N

详细子任务附加限制及分值如下表所示。

子任务 分值 附加限制
11 1515 图为星形图(M=N1M = N - 1,一个节点连接到所有其他节点),所有测试数据的 N2N^2 之和 5000000\leq 5000000
22 77 图为完全图,N50N \leq 50,所有测试数据的 N×MN \times M 之和 12000000\leq 12000000
33 88 图为一条链(M=N1M = N - 1,边形成单路径),所有测试数据的 N2N^2 之和 5000000\leq 5000000
44 1515 图为一条链,无进一步限制
55 77 图为树,所有测试数据的 N2N^2 之和 5000000\leq 5000000
66 1616 图为树,初始颜色 aa{1,2,,N}\{1, 2, \ldots, N\} 的一个排列
77 1010 所有测试数据的 N×MN \times M 之和 5000000\leq 5000000
88 2222 无附加限制