#abc219g. [abc219_g]Propagation

[abc219_g]Propagation

问题描述

给定一个简单无向图,有 NN 个顶点和 MM 条边。其中第 ii 条边连接了顶点 uiu_i 和顶点 viv_i
此外,对于每个 i=1,2,,Ni = 1, 2, \ldots, N,顶点 ii 上有一个整数 ii

同时给出 QQ 个查询。
对于每个 i=1,2,,Qi = 1, 2, \ldots, Q,第 ii 个查询表示为整数 xix_i。这个查询涉及以下操作。

  1. XX 为顶点 xix_i 上的整数。
  2. 对于与顶点 xix_i 相邻的每个顶点,用 XX 替换其上的整数。

这里,当存在连接它们的边时,顶点 uu 和顶点 vv 被称为相邻的。

按照输入中给出的顺序,打印出所有查询处理后每个顶点上的整数。

约束条件

  • 1N2×1051 \leq N \leq 2 \times 10^5
  • 0Mmin(2×105,N(N1)/2)0 \leq M \leq \min(2 \times 10^5, N(N-1)/2)
  • 1Q2×1051 \leq Q \leq 2 \times 10^5
  • 1ui,viN1 \leq u_i, v_i \leq N
  • 1xiN1 \leq x_i \leq N
  • 给定的图是简单图。换句话说,它没有自环和多重边。
  • 输入中的所有值都是整数。

输入

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

NN MM QQ u1u_1 v1v_1 u2u_2 v2v_2 \vdots uMu_M vMv_M x1x_1 x2x_2 \ldots xQx_Q

输出

按照下面的格式,打印出处理所有查询后写在顶点上的整数,数字之间用空格隔开。
这里,对于每个 i=1,2,,Ni = 1, 2, \ldots, NAiA_i 表示写在顶点 ii 上的整数。

A1A_1 A2A_2 \ldots ANA_N


示例输入 1

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

示例输出 1

1 3 3 3 3

每个查询涉及以下操作。

  • 第一个查询 (x1=1)(x_1 = 1):顶点 11 上写着整数 11,与顶点 11 相邻的顶点是顶点 22 和顶点 55。因此,顶点 22 和顶点 55 上的整数被替换为 11
  • 第二个查询 (x2=3)(x_2 = 3):顶点 33 上写着整数 33,与顶点 33 相邻的顶点是顶点 22 和顶点 44。因此,顶点 22 和顶点 44 上的整数被替换为 33
  • 第三个查询 (x3=4)(x_3 = 4):顶点 44 上写着整数 33,与顶点 44 相邻的顶点是顶点 2233 和顶点 55。因此,顶点 2233 和顶点 55 上的整数被替换为 33。(顶点 22 和顶点 33 已经有 33 写在上面,所以实际的变化只发生在顶点 55 上。)

示例输入 2

14 14 8
7 4
13 9
9 8
4 3
7 2
13 8
12 8
11 3
6 3
7 14
6 5
1 4
10 13
5 2
2 6 12 9 1 10 5 4

示例输出 2

1 6 1 1 6 6 1 9 9 10 11 12 10 14