11 条题解

  • 0
    @ 2025-3-15 18:10:37
    #include <bits/stdc++.h>
    #define endl '\n'
    using namespace std;
    typedef pair<int,int> PII;  
    using ll = long long;
    using ULL = unsigned long long;
    const int N = 1e6+5;
    
    int n, q;
    int a[N];
    inline void solve() { 
        cin >> n >> q;
        for (int i = 0; i < n; i++) cin >> a[i];
        for (; q-- ;) {
            int x; cin >> x;
            int l = 0 ,r = n - 1;
            while (l < r) {
                int mid = (l + r) >> 1;
                if (a[mid] >= x) r = mid;
                else l = mid + 1;
            } 
            if (a[l] != x) cout << "-1 -1" << endl;
            else {
                cout << l << ' ';
                int l = 0, r = n - 1;
                while (l < r) {
                    int mid = (l + r + 1) >> 1;
                    if (a[mid] <= x) l = mid;
                    else r = mid - 1; 
                }
                cout << l << endl;
            }
        }
    }          
    
    int main() { 
        ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
        int _ = 1; 
        //int _; cin >> _;
        while (_--) solve();
        return 0;
    }
    

    信息

    ID
    88
    时间
    1000ms
    内存
    256MiB
    难度
    7
    标签
    递交数
    1250
    已通过
    290
    上传者