#include<bits/stdc++.h>
using namespace std;
const int N=1000000+1;
int a[N];
int l,r,mid=0,n,gs,mc;
void find(int k,int l,int r){
while(l<r){
mid=(l+r)/2;
if(a[mid]==k&&a[mid-1]!=k){
printf("%d ",mid);
return;
}else{
if(a[mid]>k){
r=--mid;
}else{
if(a[mid-1]==k){
r--;
}else{
l=mid+1;
}
}
}
}
if(a[l]!=k){
printf("-1 ");
}else{
printf("%d ",l);
}
}
int main(){
scanf("%d%d",&n,&gs);
for(int i=1;i<=n;i++){
scanf("%d",&a[i]);
}
for(int i=1;i<=gs;i++){
l=1;
r=n;
scanf("%d",&mc);
find(mc,l,r);
}
return 0;
}
80分,最后一个点TLE,求调!!!!!!!!!