题解(二分查找 函数)
2023-09-12 20:17:33
发布于:江苏
4阅读
0回复
0点赞
#include<iostream>
using namespace std;
int a[100005],b[100005];
int erfen(int n,int x){
int left=1,right=n;
int index=-1;
while(left<=right){
int mid=(left+right)>>1;
if(a[mid]==x){
index=mid;
break;
}
else if(a[mid]<x){
left=mid+1;
}
else{
right=mid-1;
}
}
return index;
}
int main(){
int n,m;
cin>>n>>m;
for(int i=1;i<=n;i++)
cin>>a[i];
for(int i=1;i<=m;i++)
cin>>b[i];
for(int i=1;i<=m;i++)
cout<<erfen(n,b[i])<<endl;
return 0;
}
这里空空如也
有帮助,赞一个