小M的查询
时间限制:1秒 内存限制:256M
【问题描述】
小M最近正在研究数的分布规律,现在遇到了一个棘手的查询问题:给出 \(n\) 个整数序列:\(a[1],a[2],…,a[n]\),然后给出 \(m\) 个查询:\(S\ x\),表示询问在 \(a[1]..a[n]\) 中有多少个数与 \(x\) 和不大于 \(S\)?
由于小M很忙,请你帮助实现这个查询。
【输入格式】
第一行是 \(n,m\) 两个整数。
接下来的一行有 \(n\) 个整数,表示 \(a[1],…,a[n]\)。
再接下来 \(m\) 行,表示 \(m\) 个查询:\(S\ x\)。
【输出格式】
对于每个询问,输出一个整数,表示询问的答案。
【输入输出样例1】
Input
10 5
2 5 3 10 11 1 4 7 9 15
10 5
7 4
20 6
18 10
30 20
Output
5
3
9
6
8
【输入输出样例解释】
对于查询 10 5,有 2+5、5+5、3+5、1+5、4+5 都不大于10,所以答案为5;
对于查询7 2,有2+4、3+4、1+4都不大于7,所以答案为3;
……
【数据限制】
对于 \(40%\) 的数据,\(n≤10000 , m≤1000\)
对于 \(100\%\) 的数据,\(n≤200000 , m≤100000,-2\*10^9≤a[i],x,S≤2\*10^9\)
【来源】
Mr.he
信息
- ID
- 1035
- 难度
- 3
- 分类
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 通过率
- ?
- 被复制
- 1
- 上传者