Cod sursa(job #347916)

Utilizator florin_marius90Florin Marius Popescu florin_marius90 Data 13 septembrie 2009 16:10:41
Problema Subsecventa de suma maxima Scor 70
Compilator fpc Status done
Runda Arhiva educationala Marime 0.76 kb
VAR s:array[1..6000000] of longint;
    n,inceput,inceput_cur,sfarsit,suma_max,suma_cur,i:longint;
    f,g:text;
begin
assign(f,'ssm.in'); reset(f);
assign(g,'ssm.out'); rewrite(g);

readln(f,n);
{for i:=1 to n do read(f,s[i]);  }
  read(f,s[1]);
suma_max:=s[1];
suma_cur:=suma_max;
inceput:=1;
sfarsit:=1;
inceput_cur:=1;

for i:=2 to n do
 begin
 read(f,s[i]);
 if suma_cur<0 then begin suma_cur:=s[i]; inceput_cur:=i; end else
    suma_cur:=suma_cur+s[i];
 if suma_max<suma_cur then begin
                           suma_max:=suma_cur;
                           inceput:=inceput_cur;
                           sfarsit:=i;
                          end ;

         end;
  write(g,suma_max,' ',inceput,' ',sfarsit);
  close(f); close(g); end.