求:这段代码是怎么RE的?
  • 板块学术版
  • 楼主roumeideclown
  • 当前回复4
  • 已保存回复4
  • 发布时间2023/3/11 11:28
  • 上次更新2023/10/23 21:57:08
查看原帖
求:这段代码是怎么RE的?
830990
roumeideclown楼主2023/3/11 11:28
#include<bits/stdc++.h>
using namespace std;
long long a[100101];
int main() {
	long long n,m,x;
	scanf("%lld",&n);
	for(long long i=1;i<=n;i++) {
		scanf("%lld",&a[i]);
	}
	scanf("%lld",&m);
	for(long long i=1;i<=m;i++) {
		scanf("%lld",&x);
		long long l=1,r=2e9,mid,mn=2e9,ans;
		while(l<=r) {
			mid=(l+r)/2;
			if(mid==x) {
				ans=a[mid];
				break;
			}
			if(x-mid<mn) {
				mn=x-mid;
				if(a[mid]<ans) {
					ans=a[mid];
				}
			}
			if(mid<x) {
				l=mid+1;
			}
			else {
				r=mid-1;
			}
		}
		printf("%lld\n",ans);
	}
	return 0;
}

2023/3/11 11:28
加载中...