题目大意:牛可乐得到了一个长度为 n 且非严格单调递增的序列 a,然而这个序列被 q 层魔法封印了,其中第 i 层封印的问题包含两个整数 xi,yi(xi≤yi),牛可乐必须正确回答序列中大于等于 xi且小于等于 yiy_iyi 的数字个数才能够解开该层封印。
牛可乐觉得这个问题太难了,于是他想请你帮助他解开序列的 q 层封印。

思路:二分查找模板题,由于本蒟蒻太菜,不会二分模板(好吧其实是太懒了),只能用C++库中的二分查找函数水过。
#include <bits/stdc++.h>
using namespace std;

signed main() {
    int n;
    cin >> n;
    vector<int> a(n);
    for (int i = 0; i < n; i++)
        cin >> a[i];
    int q;
    cin >> q;
    int l, r;
    while (q--) {
        cin >> l >> r;
        cout << upper_bound(a.begin(), a.end(), r) - lower_bound(a.begin(), a.end(), l) << endl;
    }
}