/ SB域 /

记录详情

Accepted


  
# 状态 耗时 内存占用
#1 Accepted 1ms 400.0 KiB
#2 Accepted 1ms 908.0 KiB
#3 Accepted 2ms 224.0 KiB
#4 Accepted 3ms 348.0 KiB
#5 Accepted 13ms 636.0 KiB
#6 Accepted 47ms 1.07 MiB
#7 Accepted 45ms 1.453 MiB
#8 Accepted 48ms 1.832 MiB
#9 Accepted 59ms 2.211 MiB
#10 Accepted 53ms 3.898 MiB

代码

#include <iostream>
#include <cstring>
#include <string>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <algorithm>
using namespace std;
int st,ed,n,sum[500001],ans=-2147483647,l=1,r=0,q[500001],x;
int main()
{
	scanf("%d%d%d",&n,&st,&ed);
	for(int i=1;i<=n;i++)scanf("%d",&x),sum[i]=sum[i-1]+x;
	q[r]=0;
	for(int i=st;i<=n;i++)
	{
		while(r>=l&&i-q[l]>ed)l++;
		while(r>=l&&sum[q[r]]>=sum[i-st])r--;
		q[++r]=i-st;
		ans=max(ans,sum[i]-sum[q[l]]);
	}
	printf("%d",ans);
	return 0;
}

信息

递交者
类型
递交
题目
【模板】最大子序和
题目数据
下载
语言
C++
递交时间
2019-10-01 08:46:36
评测时间
2019-10-01 08:46:36
评测机
分数
100
总耗时
275ms
峰值内存
3.898 MiB