1 条题解

  • 0
    @ 2026-9-12 15:02:48

    #include <bits/stdc++.h> using namespace std; const int N = 1e6 + 10; int n, m; int a[N];

    int main() { cin >> n >> m; for (int i = 1; i <= n; i++) { cin >> a[i]; } while (m--) { int x; cin >> x; int l = 1, r = n, res = -1; while (l <= r) { int mid = (l + r) / 2; if (a[mid] > x) { r = mid - 1; } else if (a[mid] < x) { l = mid + 1; } else if (a[mid] == x) { res = mid; r = mid - 1; } } cout << res << " "; } return 0;

    }

    信息

    ID
    9842
    时间
    1000ms
    内存
    125MiB
    难度
    3
    标签
    递交数
    550
    已通过
    134
    上传者