题目:
代码:
#include <bits/stdc++.h>
using namespace std;
int n, q;
const int N = 1e5 + 10;
int a[N];
int main()
{
std::ios::sync_with_stdio(false);
cin >> n >> q;
for(int i = 0; i < n; i++) cin >> a[i];
while (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 << 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;
}
else cout << "-1 -1" << endl;
}
return 0;
}
艹了,俩个while循环,我脑海里面一直当成if给那算里,md,艹,算了一下午