#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
const int maxn =1e5+10;
int a[maxn];
int main() {
int n,m,x;
cin>>n>>m;
for(int i=0;i<n;i++) cin>>a[i];
while(m--){
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\n";
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 <<"\n";
}
}
return 0;
}
相关文章
- 08-24AcWing-425. 明明的随机数.
- 08-24leetCode题解之寻找一个数在有序数组中的范围Search for a Range
- 08-24shell生成指定范围内的随机数
- 08-24CSP-J考试复习:第二单元 基础算法 2.7 2的k次方进制数
- 08-24js生成指定范围的随机数
- 08-24使用Random类生成指定范围的随机数
- 08-24求新数和倍数(输入正整数n和0~9范围内的一个数m,判断m是否存在于n中(用函数实现),若不存在则输出“m不存在于n中”(m和n以具体输入的值代替))
- 08-24设定范围和步长的递增数验证器Validator
- 08-24AcWing 790. 数的三次方根
- 08-24蓝桥杯 基础练习 数的读法