code:
#include<bits/stdc++.h>
using namespace std;
int n,m,a[1000001],i,j,k,l,r;bool b=1;
int main(){
cin>>n>>m;
for(i=1;i<=n;i++){
scanf("%d",&a[i]);
}
for(i=1;i<=m;i++){
cin>>k;
int l=1,r=n+1,mid;
b=0;
while(l<=r){
mid=l+(r-l)/2;
if(a[mid]==k){
printf("%d ",mid);
b=1;
break;
}
if(a[mid]>k){
r=mid-1;
}
if(a[mid]<k){
l=mid+1;
}
}
if(!b){
printf("-1 ");
}
}
return 0;
}
求助!!!