QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 512 MB Total points: 100
[0]

# 9085. 这是我自己的发明

Statistics

给一个树,n 个点,有点权,初始根是 1。

m 个操作,种类如下:

1 x 将树根换为 x

2 x y 给出两个点 x,y,从 x 的子树中选每一个点,y 的子树中选每一个点,求点权相等的情况数。

输入格式

第一行两个数表示 n,m

第二行 n 个数,表示每个点的点权 ai

之后 n1 行 , 每行两个数 x,y , 表示一条边。

之后 m 行,每行表示一个操作。

输出格式

对于每个询问,输出一个数表示答案。

样例数据

样例输入

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

样例输出

0
1
1
1

子任务

Idea:nzhtl1477,Solution:nzhtl1477,Code:nzhtl1477,Data:nzhtl1477

对于 100% 的数据,1n1051m5×105 , 1ai109