#include<bits/stdc++.h>
using namespace std;
int n,m,a[1000005],b,q,p;
int fen(int i,int j,int k)
{
int l = i;
int r = j;
while(l<r){
int mid = (l+r)/2;
if(a[mid]>=k){
if(a[mid]==k&&(mid==0 or a[mid-1]!=k)){
return mid+1;
}
r = mid;
}else{
l = mid+1;
}
}
return -1;
}
int main()
{
ios::sync_with_stdio(0);
cin>>n>>m;
for(int i=0;i<n;i++)
cin>>a[i];
for(int i=0;i<m;i++){
cin>>b;
p = fen(0,n-1,b);
cout<<p<<" ";
}
}
往左收缩的时候,mid明明已经比找的大了,就不用再包含了吧,最开始区间传值的时候也是n-1不是n的啊。