Pagini recente » Cod sursa (job #401552) | Cod sursa (job #2259291) | Cod sursa (job #2783779) | Cod sursa (job #582615) | Cod sursa (job #3276674)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("2sec.in");
ofstream fout("2sec.out");
int n,a[1001005];
int minim[1001005],maxim[1001005];
int main()
{
int i,j,s,ans;
fin>>n;
for(i=1;i<=n;i++) fin>>a[i];
s=minim[1]=a[1];
if(s>0) s=0;
for(i=2;i<=n;i++)
{
s+=a[i];
minim[i]=min(minim[i-1],s);
if(s>0) s=0;
}
s=maxim[n]=a[n];
for(i=n-1;i>=1;i--)
{
s+=a[i];
maxim[i]=max(maxim[i+1],s);
if(s<0) s=0;
}
ans=0;
for(i=2;i<=n;i++)
ans=max(ans,maxim[i]-minim[i-1]);
fout<<ans<<'\n';
return 0;
}