#include<bits/stdc++.h>
using namespace std;
int num[1000005];
int erfen(int l,int r,int key)
{
int mid=l+(r-l)/2;
if(l<=r)
{
if(num[mid]==key)
{
return mid;
}
else
{
if(num[mid]>key)
return erfen(l,mid-1,key);
if(num[mid]<key)
return erfen(mid+1,r,key);
}
}
else
return -1;
}
int main()
{
int n,m,k;
scanf("%d %d",&n,&m);
for(int i=0;i<n;i++)
{
scanf("%d",&num[i]);
}
sort(num,num+n);
for(int i=0;i<m;i++)
{
scanf("%d",&k);
printf("%d\n",erfen(0,n,k));
}
}
二分查找
最新推荐文章于 2022-08-23 11:05:56 发布