#include<stdio.h>
#include<algorithm>
using namespace std;
int main()
{
int i,j,m,n,a[100005],tmp,k=0;
while(scanf("%d %d",&n,&m)!=EOF)
{
if(n==m&&m==0)
break;
k++;
for(i=1;i<=n;i++)
{
scanf("%d",&a[i]);
}
printf("CASE# %d:\n",k);
sort(a+1,a+n+1);
while(m--)
{
scanf("%d",&j);
tmp = lower_bound(a,a+n,j)-a;//查找大于或等于x的第一个位置。
if(a[tmp]==j)
printf("%d found at %d\n",j,tmp);
else
printf("%d not found\n",j);
}
}
return 0;
}
水题,只是为了记下这个lower_bound//查找大于或等于x的第一个位置
lower_bound
最新推荐文章于 2020-08-26 10:19:28 发布