Cod sursa(job #689261)

Utilizator boby301Bogdan Bacila boby301 Data 24 februarie 2012 12:03:57
Problema Subsecventa de suma maxima Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.73 kb
var f,g:text;
    v,aux:array[0..6000000]of longint;
    i,n,max,a,b,aa,bb:longint;

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

read(f,n);
for i:=1 to n do
  read(f,v[i]);

aux[1]:=v[1];max:=v[1];a:=1;b:=1;
for i:=2 to n do
  begin
   if (aux[i-1]+v[i])>=v[i] then aux[i]:=aux[i-1]+v[i]
                            else begin
                                   aux[i]:=v[i];
                                   a:=i;
                                 end;
   b:=b+1;

   if max<=aux[i] then begin
                        max:=aux[i];
                        aa:=a;
                        bb:=b;
                     end;

  end;





write(g,max,' ',aa,' ',bb);

close(f);close(g);
end.