代码如下:
#include<bits/stdc++.h>
using namespace std;
int a[1000000];
int b[1000000];
int x(int n,int k)
{
int left=0;
int right=k-1;
int sum=0;
while(left<=right)
{
int mid=(left+right)/2;
if (a[mid]==n)
{
sum=mid;
for(int i=0;i<mid;i++)
{
if(a[i]==n)
{
return i;
}
}
return sum;
}
if (a[mid]>=n)
{
right=mid-1;
}
else
{
left=mid+1;
}
}
return -1;
}
int main()
{
int c,m,n,num;
cin>>c>>m;
for (int i=0;i<c;i++)
{
cin>>a[i];
}
for(int i=0;i<m;i++)
{
cin>>num;
b[i]=x(num,c)+1;
}
for (int i=0;i<m;i++)
{
if(b[i]==0)
{
b[i]-=1;
}
cout<<b[i]<<" ";
}
return 0;
}