Cod sursa(job #277460)
Utilizator | A Andrei AnDrEwBoY | Data | 11 martie 2009 19:02:30 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 20 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.65 kb |
#include<stdio.h>
int main()
{
freopen("ssm.in","r",stdin);
freopen("ssm.out","w",stdout);
int n,Suma_Max,Suma_C,st,dr,inc,val;
unsigned char i;
scanf("%d",&n);
scanf("%d",&Suma_C); Suma_Max = Suma_C;
inc = st = dr = 1;
for(i = 2; i <= n; i++)
{
scanf("%d",&val);
if(Suma_C < 0) { Suma_C = val,inc = i; }
else { Suma_C += val; }
if(Suma_Max<Suma_C)
{
Suma_Max = Suma_C;
st = inc; dr = i;
}
}
printf("%d %d %d",Suma_Max,st,dr);
fclose(stdin); fclose(stdout);
return 0;
}