题解
2024-12-29 20:05:54
发布于:广东
1阅读
0回复
0点赞
#include <bits/stdc++.h>
using namespace std;
const int N=1e5+10;
int a[N],x,n,q;
int findX(int a[],int n,int x){
int left=1,right=n,pos=-1;
while(left<=right){
int mid=(left+right)/2;
if(a[mid]<x) left=mid+1;
else if(a[mid]>x) right=mid-1;
else{
pos=mid;
break;
}
}
return pos;
}
int main(){
cin>>n>>q;
for(int i=1;i<=n;i++) cin>>a[i];
for(int j=1;j<=q;j++){
cin>>x;
cout<<findX(a,n,x)<<endl;
}
return 0;
}
这里空空如也
有帮助,赞一个