789. 数的范围 - AcWing题库
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 100010;
int a[N];
int n,m;
int main()
{
cin>>n>>m;
for(int i=0;i<n;i++)
cin>>a[i];
while (m -- ){
int x;
cin>>x;
int l=0,r=n-1;
while(l<r)
{
int t=l+r>>1;
if(a[t]>=x) r=t;
else
l=t+1;
}
if(a[l]!=x)
cout<<"-1 -1"<<endl;
else
{
cout<<l<<" ";
int l=0,r=n-1;
while(l<r)
{
int t=l+r+1>>1;
if(a[t]<=x)l=t;
else
r=t-1;
}
cout<<l<<endl;
}
}
return 0;
}