#3005. DFS 序 4

DFS 序 4

题目描述

给一棵有根树,这棵树由编号为 1...N1...NNN 个结点组成。根结点的编号为 RR。每个结点都有一个权值,结点ii的权值为viv_i

接下来有 MM 组操作,操作分为三类:

1 a x1\ a\ x,表示将结点 aa的权值增加xx;

2 a x2\ a\ x,表示将a的子树上所有结点的权值增加xx;

3 a b3\ a\ b,表示求「结点a到结点b的简单路径」上所有结点的权值之和。

输入格式

第一行有三个整数 N,MN,MRR.

第二行有 NN个整数,第ii个整数表示 viv_i

在接下来的 N1N-1行中,每行两个整数,表示一条边。

在接下来的 MM 行中,每行一组操作。

输出格式

对于每组3 a b3\ a\ b操作,输出一个整数,表示「结点aa到结点bb的简单路径」上所有结点的权值之和(含结点a,ba,b)。

10 13 5
-2 -7 0 2 -9 -2 -4 9 8 -1
9 8
9 4
9 2
4 10
10 7
10 6
2 1
8 3
7 5
3 8 6
1 7 -8
1 5 -9
1 5 -4
1 4 -2
1 2 -1
3 5 1
1 7 1
3 1 3
1 1 -3
3 10 2
1 1 -8
3 8 4
16
-37
7
-1
17
10 16 4
-13 -11 5 4 18 13 14 -8 -8 14
4 1
4 10
10 2
2 8
4 7
1 6
8 5
1 3
2 9
3 5 10
1 5 -5
2 9 -4
3 8 6
1 5 -8
2 8 -5
3 8 7
1 9 0
2 10 -3
3 7 6
2 9 -4
2 8 2
3 4 4
2 1 8
1 6 5
3 8 3
13
-1
8
18
4
-5

提示

40%的数据不含操作240\% 的数据不含操作 2。

1N,M106,1RN 1 \leq N,M \leq 10^6, 1\leq R \leq N

106vi,x106 -10 ^6 \leq v_i,x \leq 10^6