Cod sursa(job #743127)

Utilizator vasile_pojogaPojoga Vasile vasile_pojoga Data 3 mai 2012 13:21:08
Problema Subsecventa de suma maxima Scor 85
Compilator fpc Status done
Runda Arhiva educationala Marime 0.82 kb
program ssm;
var n,i,min,rez,x,k,k1:longint;
    s,m,ind:array[0..6000000] of longint;
    b:array[1..1 shl 17] of char;
begin
assign(input,'ssm.in'); settextbuf(input,b); reset(input);
assign(output,'ssm.out'); rewrite(output);
readln(n);
min:=2147483647;
for i:=1 to n do begin
                 read(x);
                 s[i]:=s[i-1]+x;
                 if s[i]<min then begin min:=s[i]; k:=i; end;
                 m[i]:=min; ind[i]:=k;
                 end;
rez:=-2147483648;
for i:=1 to n do if s[i]-m[i-1]>rez then
                                    begin
                                    rez:=s[i]-m[i-1];
                                    k:=ind[i-1]+1;
                                    k1:=i
                                    end;
if k>k1 then k:=k1;
write(rez,' ',k,' ',k1);
close(output);
end.