#AT1707. E - Through Path

E - Through Path

E - 通过路径

分数:$500$ 分

问题描述

给定一颗 $N$ 个顶点和 $N-1$ 条边的树,其中顶点编号为 $1, 2, \dots, N$,边的编号为 $1, 2, \dots, N-1$。第 $i$ 条边连接了顶点 $a_i$ 和 $b_i$。
每个顶点上有一个整数,设顶点 $i$ 上的整数为 $c_i$。最初,$c_i = 0$。

给出 $Q$ 个查询。第 $i$ 个查询包含整数 $t_i$,$e_i$ 和 $x_i$,具体如下:

  • 如果 $t_i = 1$:对于从顶点 $a_{e_i}$ 出发通过边可到达而没有经过顶点 $b_{e_i}$ 的每个顶点 $v$,将 $c_v$ 替换为 $c_v + x_i$。
  • 如果 $t_i = 2$:对于从顶点 $b_{e_i}$ 出发通过边可到达而没有经过顶点 $a_{e_i}$ 的每个顶点 $v$,将 $c_v$ 替换为 $c_v + x_i$。

处理完所有查询后,按照顺序输出每个顶点上的整数。

约束

  • 输入的所有值都是整数。
  • $2 \le N \le 2 \times 10^5$
  • $1 \le a_i, b_i \le N$
  • 给定的图是一棵树。
  • $1 \le Q \le 2 \times 10^5$
  • $t_i \in \{1, 2\}$
  • $1 \le e_i \le N-1$
  • $1 \le x_i \le 10^9$

输入

输入的格式如下:

NN

a1a_1 b1b_1

\vdots

aN1a_{N-1} bN1b_{N-1}

QQ

t1t_1 e1e_1 x1x_1

\vdots

tQt_Q eQe_Q xQx_Q

输出

处理完所有查询后,按照顺序输出每个顶点上的整数,每个整数占一行。


5
1 2
2 3
2 4
4 5
4
1 1 1
1 4 10
2 1 100
2 2 1000
11
110
1110
110
100

在第一个查询中,我们将从顶点 $1$ 出发通过边可到达而没有经过顶点 $2$ 的每个顶点,即顶点 $1$,的整数加 $1$。
在第二个查询中,我们将从顶点 $4$ 出发通过边可到达而没有经过顶点 $5$ 的每个顶点,即顶点 $1, 2, 3, 4$,的整数加 $10$。
在第三个查询中,我们将从顶点 $2$ 出发通过边可到达而没有经过顶点 $1$ 的每个顶点,即顶点 $2, 3, 4, 5$,的整数加 $100$。
在第四个查询中,我们将从顶点 $3$ 出发通过边可到达而没有经过顶点 $2$ 的每个顶点,即顶点 $3$,的整数加 $1000$。


7
2 1
2 3
4 2
4 5
6 1
3 7
7
2 2 1
1 3 2
2 2 4
1 6 8
1 3 16
2 4 32
2 1 64
72
8
13
26
58
72
5

11
2 1
1 3
3 4
5 2
1 6
1 7
5 8
3 9
3 10
11 4
10
2 6 688
1 10 856
1 8 680
1 8 182
2 2 452
2 4 183
2 6 518
1 3 612
2 6 339
2 3 206
1657
1657
2109
1703
1474
1657
3202
1474
1247
2109
2559