UOJ Logo AYIT Online Judge

AYITOJ

#158. 非严格次大值

统计
时间限制:2s    内存限制:256M

题目描述

相信大家都见过这样的题目:给一个长度为 n 的数据,有 m 次询问,每次询问有两个整数 l,r,输出区间 [l, r] 的最大值,这样的题目相信大家都做腻了,

所以现在升级一下,其他条件不变,输出区间 [l, r] 次大值,例如 [1, 2, 3, 4, 5],最大值是 5,次大值是 4。

注意:为了减少难度,只会有区间查询,不进行区间修改

数据保证每次查询区间最少会有两个数字,并且 l 和 r 的范围一定小于数组的长度,如果区间数字为 [5, 5],那么最大值和次大值都为 5.


输入描述

第一行两个正整数 n,m,表示数组的长度为 n 以及查询的次数 m。

第二行有 n 个整数,两个整数之间空格隔开,表示数组的值。

下面 m 行,每行两个正整数 l,r,表示要查询的区间。


输出描述

输出 m 行,表示每次查询的答案。

数据范围

2 <= n <= 1e5,1 <= m <= 1e5, r - l >= 1,r <= n,数组中的每个值的范围 [0,1e9]。

样例输入

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

样例输出

3
4
1

题目来源

zhengyansai