Cod sursa(job #2391734)
| Utilizator | Data | 29 martie 2019 10:13:56 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.46 kb |
#include<cstdio>
#define N 30000000
int n,i,j,k,s,m=-1000,l,t,o=-1;
char r[N];
inline int A()
{
int s=0,b=1;
o++;
if(r[o]=='-')
b=-1,o++;
for(;r[o]>='0'&&r[o]<='9';o++)
s=s*10+r[o]-'0';
return s*b;
}
int main()
{
freopen("ssm.in","r",stdin),freopen("ssm.out","w",stdout),fread(r,1,N,stdin),n=A();
for(i=1;i<=n;i++)
{
t=A(),s<0?s=t,l=i:s+=t;
if(m<s)
m=s,j=l,k=i;
}
printf("%d %d %d",m,j,k);
}
