请尝试手写实现二分查找。
给定一个长度为 n 的序列 a,你需要处理 m 个询问。
对于每一个询问,给定两个整数 l 和 r,你需要回答序列中有多少项满足 l \leq a_i \leq r。
输入
第一行包含两个整数 n,m \ (1 \leq n,m \leq 10^5),含义如题目所示。
第二行包含 n 个用空格间隔的整数 a_1,a_2,...,a_n \ (-10^9 \leq a_i \leq 10^9),表示序列 a。
接下来 m 行每行包含两个用空格间隔的整数 l,r \ (-10^9 \leq l \leq r \leq 10^9),含义如题目描述所示。
输出
对于每个询问,输出一行,包含一个整数,表示答案。
样例
标准输入 复制文本 |
5 4 10 1 10 3 4 1 10 2 9 3 4 2 2 |
标准输出 复制文本 |
5 2 2 0 |