5317 - 第二十四章 双指针和莫队:树上莫队

通过次数

1

提交次数

1

时间限制 : 2 秒
内存限制 : 512 MB
  • 给定 n 个结点的树,每个结点有一种颜色。
  • m 次询问,每次询问给出 u,v,回答 u,v 之间的路径上的结点的不同颜色数。
  • 1\le n\le 4\times 10^41\le m\le 10^5,颜色是不超过 2 \times 10^9 的非负整数。

输入

在第一行中有两个整数N和M。(N <= 40000,M <= 100000)

在第二行中有N个整数。第i个整数表示第i个节点的权重。

在接下来的N-1行中,每行包含两个整数u和v,它描述了一条边(u,v)。

在接下来的M行中,每行包含两个整数u和v,这表示一个操作,询问在从u到v的路径上,有多少个不同的整数代表了节点的权重。

输出

对于每个操作输出其结果。

样例

输入

8 2
105 2 9 3 8 5 7 7
1 2
1 3
1 4
3 5
3 6
3 7
4 8
2 5
7 8

输出

4
4