题目描述
给定长度为 N 的整数序列 A,下标为 1∼N。
现在要执行 M 次操作,其中第 i 次操作为给出三个整数 li,ri,ki,求 A[li],A[li+1],…,A[ri](即 A 的下标区间 [li,ri])中第 ki 小的数是多少。
输入格式
第一行包含两个整数 N 和 M。
第二行包含 N 个整数,表示整数序列 A。
接下来 M 行,每行包含三个整数 li,ri,ki,用以描述第 i 次操作。
输出格式
对于每次操作输出一个结果,表示在该次操作中,第 k 小的数的数值。
每个结果占一行。
样例
输入样例:
7 3
1 5 2 6 3 7 4
2 5 3
4 4 1
1 7 3
输出样例:
5
6
3
样例解释
序列 A=[1,5,2,6,3,7,4]
- 区间 [2,5] 为 [5,2,6,3],排序后 [2,3,5,6],第 3 小是 5。
- 区间 [4,4] 只有一个数 6,第 1 小是 6。
- 区间 [1,7] 整个序列排序后 [1,2,3,4,5,6,7],第 3 小是 3。
数据范围
- N≤105
- M≤104
- ∣A[i]∣≤109
时空限制