Cod sursa(job #285871)
Utilizator | Radu Antohi 7Radu | Data | 23 martie 2009 09:02:17 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.64 kb |
program Ssm;
var
n,i,j,k,l,bst,sm,inc1,sfr1:longint;
a:array[1..6000001] of integer;
fl:text;
begin
assign(fl,'ssm.in');
reset(fl);
readln(fl,n);
for i := 1 to n do
read(fl,a[i]);
close(fl);
bst := -MaxLongInt;
sm := 0;
for i := 1 to n do
begin
if sm < 0 then
begin
sm := a[i];
k := i;
end
else
sm := sm+a[i];
if bst < sm then
begin
bst := sm;
inc1 := k;
sfr1 := i;
end;
end;
assign(fl,'ssm.out');
rewrite(fl);
writeln(fl,bst,' ',inc1,' ',sfr1);
close(fl);
end.