代码:
#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int a[1000010];
int main(){
int n,m;
cin>>n>>m;
for(int i=1;i<=n;i++) cin>>a[i];
for(int i=1;i<=m;i++){
int c,tmp=0;
cin>>c;
int l=1,r=n,mid=(l+r)/2;
while(l<r){
if(a[mid]<c) l=mid+1;
if(a[mid]>c) r=mid-1;
if(a[mid]==c){
while(a[mid-1]==a[mid]) mid--;
tmp=1;
cout<<mid<<" ";
break;
}
mid=(l+r)/2;
}
if(tmp==0) cout<<-1<<" ";
}
return 0;
}
提交记录