Cod sursa(job #2774512)
Utilizator | Data | 11 septembrie 2021 19:26:52 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | c-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.5 kb |
#include<stdio.h>
int n,i,j,k,s,m=-1000,l,o=-1,b,e,t;
char r[30000000];
int main()
{
freopen("ssm.in","r",stdin),freopen("ssm.out","w",stdout),scanf("%d\n",&n),gets(r);
for(i=1;i<=n;++i) {
e=0,b=1,++o;
if(r[o]==45)
b=-1,++o;
for(;r[o]>47;++o)
e=e*10+r[o]-48;
t=e*b;
if(s<0)
s=t,l=i;
else
s+=t;
if(m<s)
m=s,j=l,k=i;
}
printf("%d %d %d",m,j,k);
return 0;
}