题目链接:https://www.luogu.com.cn/problem/T206189

#include<cstdio>
#include<algorithm>//用到lower_bound
using namespace std;
const int MAXN=1e6+10;//注意范围
int n,m,a[MAXN];
int main(){
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++) scanf("%d",&a[i]);
    while(m--){
        int x;
        scanf("%d",&x);
        int ans=lower_bound(a+1,a+n+1,x)-a;//二分搜,注意-a
        if(x!=a[ans]) printf("-1 ");//没有,输出-1
        else printf("%d ",ans);
    }
    return 0;
}