Cod sursa(job #686378)

Utilizator andreifirstCioara Andrei Ioan andreifirst Data 21 februarie 2012 16:33:34
Problema Subsecventa de suma maxima Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.59 kb
//Porgramare dinamica

var v1, v2, n, i, x, y, z, a, b, aa, bb, smax:longint;
    f, g:text;
    buf1, buf2:array [1.. 1 shl 17] of char;

begin
assign (f, 'ssm.in'); settextbuf (f, buf1); reset (f);
assign (g, 'ssm.out'); settextbuf (g, buf2); rewrite (g);

read (f, n); a:=1; b:=0; smax:=-maxlongint;

for i := 1 to n do
  begin
  read (f, x);

  if x > v1+x then begin v2:=x; a:=i; b:=i; end
              else begin v2:=v1+x; inc (b); end;

  if v2>smax then begin smax :=v2; aa:=a; bb:=b; end;

  v1:=v2;
  end;

writeln (g, smax, ' ', aa, ' ', bb);
close (f); close (g);
end.