/*
题型:子段和,滚动数组
注意:别忘了%2 如果(sum<0) sum=0;
*/
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cmath>
using namespace std;
int sum,a[2],n;
int main()
{
scanf("%d",&n);
scanf("%d",&a[1]);
sum=a[1];
for(int i=2;i<=n;++i) {
scanf("%d",&a[i%2]);
sum+=a[i%2];
a[i%2]=max(a[(i-1)%2],sum);
if(sum<0) sum=0;
}
printf("%d",a[n%2]);
return 0;
}
P1115 最大子段和
最新推荐文章于 2022-12-19 00:31:55 发布