记录编号 602648 评测结果 AAAAA
题目名称 2698.环路运输 最终得分 100
用户昵称 GravatarKKZH 是否通过 通过
代码语言 C++ 运行时间 0.232 s
提交时间 2025-07-05 13:26:05 内存使用 7.24 MiB
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;
long long n,ans;
long long a[10000010];
deque <int> q;
int main(){
	freopen("transportt.in","r",stdin);
	freopen("transportt.out","w",stdout);
	scanf("%lld",&n);
	for(long long i=1;i<=n;i++){
		scanf("%lld",&a[i]);
		a[i+n]=a[i];
	}
	for(long long i=1;i<=2*n;i++){
		while (q.empty()==0&&i-q.front()>n/2)
            q.pop_front();
        if (q.empty()==0)
            ans=max(ans, a[i]+a[q.front()]+i-q.front());
        while(q.empty()==0&&a[q.back()]-q.back()<= a[i]-i)
            q.pop_back();
        q.push_back(i);
	}
	printf("%lld",ans);
	return 0;
}