虽然知道顺序会超时,但是我还是试了一下-。-
#include<malloc.h>
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<math.h>
#include<queue>
using namespace std;
int erfen(int x,int a[],int n)
{
int low=1,high=n,middle,ans=n+1;
while(low<=high)
{
middle=(low+high)/2;
if(a[middle]>=x)
{
ans=middle;
high=middle-1;
}
else low=middle+1;
}
return ans;
}
int main()
{
ios::sync_with_stdio(false);
int i,x,n,a[100000],q;
cin>>n;
for(i=1;i<=n;i++)
cin>>a[i];
cin>>q;
for(i=1;i<=q;i++)
{
cin>>x;
int ans=erfen(x,a,n);
printf("%d",erfen(x,a,n));
}
return 0;
}