5
2 5 6 9 10
4
9 6 4 10
[C++] 纯文本查看 复制代码 #include <iostream>
using namespace std;
const int N = 1e4 + 9;
int a[N], n, m;
int binary_search(int x) {
int l = 0, r = n - 1;
while (l <= r) {
int mid = (l + r) >> 1;
if (a[mid] < x) {
l = mid + 1;
} else {
r = mid - 1;
}
}
return a[l] == x ? l : -1;
}
int main() {
cin >> n;
for (int i = 0; i < n; ++i) {
cin >> a[i];
}
cin >> m;
while (m--) {
int x;
cin >> x;
cout << binary_search(x) << endl;
}
return 0;
}
|