#P3000. 树的第k大

树的第k大

题目描述

给定一棵 nn 个节点并且以11为根节点的树,每个节点的权值为 xix_{i}
现有 QQ 个询问,每个询问给定 v,kv,k,求节点vv的子树第 kk 大的数。

输入格式

NN QQ
X1X_1 \ldots XNX_N
A1A_1 B1B_1
\vdots
AN1A_{N-1} BN1B_{N-1}
V1V_1 K1K_1
\vdots
VQV_Q KQK_Q
数据范围如下:
2N1052 \leq N \leq 10^5
0Xi1090\leq X_{i}\leq 10^9
1Ai,BiN1\leq A_{i},B_{i}\leq N
1Q1051\leq Q \leq 10^5
1ViN1\leq V_{i}\leq N
1Ki201\leq K_{i}\leq 20
给定图形是一棵树。
以顶点 ViV_{i} 为根的子树有 KiK_{i} 个或更多顶点。 输入值均为整数。

输出格式

打印 QQ 行。第 ii 行应包含对第 ii 行查询的回复。

样例

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

对于第11个查询,以顶点11为根的子树上的顶点是顶点 1,2,3,4,51,2,3,4,5,因此打印写在这些顶点上的数字的第22大的值为44
对于第22个查询,以顶点22为根的子树中的顶点是顶点 2,3,52,3,5.因此打印写在这些顶点上的数字的第11大的值为55