#X2003. 二分查找2

二分查找2

题目描述

给定一个序列 a1a_{1}a2a_{2}……ana_{n}mm个询问。 每次询问给出两个数l,xl,x,求最大的r(rn)r(r \le n)满足ala_{l}+al+1+a_{l+1}+……+arx+a_r \le x。 如果不存在这样的rr,即al>xa_{l}>x,输出1-1

输入格式

第一行两个整数nnmm。 第二行nn个整数,表示a1a_{1}a2a_{2}……ana_{n}。 接下来有mm行,每行两个整数l,xl,x

输出格式

输出mm行,每行一个整数表示答案。

样例 #1

样例输入 #1

5 5
1 1 5 3 5
2 8
3 16
3 6
5 4
1 3

样例输出 #1

3
5
3
-1
2

提示

对于100100%的数据,满足$1\le n,m\le 10^5,1 \le l \le n,1 \le a_{i} \le 10^9,1 \le x \le 10^{14}$。