#S0071. 新年树

新年树

题目描述

给你一颗 nn 个节点的树,根节点的编号是 11,每个节点被染上了颜色,然后就是 mm 次操作。操作的方式有两种:

  1. 将以 zz 为根的子树的结点全部更新为颜色 xx
  2. 问以 zz 为根的子树的结点的不同颜色数量。

提示:可以结合 状态压缩 完成此题。

输入格式

第一行输入 n,m(1n,m4×105)n,m(1\le n,m\le 4\times 10^5)

第二行输入每个节点的颜色。

接下来 n1n-1 行是这棵树上的所有边。

最后 mm 行表示操作:其中 11 zz xx 代表操作 1122 zz 代表操作 22

无论任何时候,树上的点的颜色编号都在 116060 之间

输出格式

输出每次询问的颜色数量。

7 10
1 1 1 1 1 1 1
1 2
1 3
1 4
3 5
3 6
3 7
1 3 2
2 1
1 4 3
2 1
1 2 5
2 1
1 6 4
2 1
2 2
2 3
2
3
4
5
1
2
23 30
1 2 2 6 5 3 2 1 1 1 2 4 5 3 4 4 3 3 3 3 3 4 6
1 2
1 3
1 4
2 5
2 6
3 7
3 8
4 9
4 10
4 11
6 12
6 13
7 14
7 15
7 16
8 17
8 18
10 19
10 20
10 21
11 22
11 23
2 1
2 5
2 6
2 7
2 8
2 9
2 10
2 11
2 4
1 12 1
1 13 1
1 14 1
1 15 1
1 16 1
1 17 1
1 18 1
1 19 1
1 20 1
1 21 1
1 22 1
1 23 1
2 1
2 5
2 6
2 7
2 8
2 9
2 10
2 11
2 4
6
1
3
3
2
1
2
3
5
5
1
2
2
1
1
1
2
3