ER 0分 SOS
查看原帖
ER 0分 SOS
937468
封禁用户楼主2023/7/29 22:44
#include <bits/stdc++.h>
using namespace std;
long long n,m,ks;
long long a[10010000];
long long rf(long long ks){
	long long l=1,r=n,k;
	 while(l<=r){
	 	k=l+(r-l)/2;
	 	if(a[k]==ks){
	 		r=k-1;
		}
		else if(a[k]>ks){
			r=k-1;
		}
		else{
			l=k+1;
		}
	 }
	 if(a[l]==ks){
	 	return l;
	 }
	 else{
	 	return 0;
	 }
	}
int main(){
cin>>n;
for(long long i=1;i<=n;i++)
	cin>>a[i];
sort(a+1,a+1+n); 
cin>>m;
for(long long i=1;i<=m;i++){
	cin>>ks;
	cout<<a[rf(ks)-1]<<endl;
}	
	return 0;
}
2023/7/29 22:44
加载中...