Cod sursa(job #608303)
Utilizator | Data | 16 august 2011 10:43:07 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 85 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.38 kb |
#include<stdio.h>
long i,x,n,max,s,l,pozi,pozfin,nr;
int main()
{
freopen("ssm.in","r",stdin);
freopen("ssm.out","w",stdout);
scanf("%ld",&n);
for (i=1;i<=n;i++)
{
scanf("%ld",&x);
if (max<s)
{
max=s;
pozi=l;
pozfin=i-1;
}
nr++;
if (nr==1)
l=i;
s+=x;
if (s<0)
{
s=0;
nr=0;
}
}
printf("%ld %ld %ld",max,pozi,pozfin);
}