3096. 第K小数[可持久化线段树] 标准IO
时间限制:1000 MS 内存限制:64 MB    算法评级:    状态:

给定长度为 $N$ 的整数序列 $A$,下标为 $1 \sim N$。

现在要执行 $M$ 次操作,其中第 $i$ 次操作为给出三个整数 $l_i,r_i,k_i$,求 $A[l_i],A[l_{i+1}],…,A[r_i]$ (即 $A$ 的下标区间 $[l_i,r_i]$)中第 $k_i$ 小的数是多少。


输入格式

第一行包含两个整数 $N$ 和 $M$。

第二行包含 $N$ 个整数,表示整数序列$A$。

接下来 $M$行,每行包含三个整数 $l_i,r_i,k_i$,用以描述第 $i$ 次操作。


输出格式

对于每次操作输出一个结果,表示在该次操作中,第 $k$ 小的数的数值。

每个结果占一行。


样例输入

7 3
1 5 2 6 3 7 4
2 5 3
4 4 1
1 7 3

样例输出

5
6
3

提示

代码运行状态:

输出