Cod sursa(job #742144)

Utilizator Buzu_Tudor_RoCont vechi Buzu_Tudor_Ro Data 28 aprilie 2012 18:33:14
Problema Subsecventa de suma maxima Scor 5
Compilator fpc Status done
Runda Arhiva educationala Marime 1.08 kb
Program p2_dinamic;
var fi,fo : text;
    max,start,finis,i,n,sum,a : longint;

begin
    assign(fi,'ssm.in'); reset(fi); readln(fi,n);
    assign(fo,'ssm.out'); rewrite(fo);
    sum:=-1 shl 21; max:=sum;

    for i:=1 to n do begin
                     read(fi,a);
                     if sum+a>=a then begin
                                      sum:=sum+a;
                                      inc(finis);
                                      end
                                 else if a>sum then begin
                                                    sum:=a;
                                                    start:=i;
                                                    finis:=i;
                                                    end;
                     if sum>max then begin
                                     max:=sum;
                                     start:=i;
                                     finis:=i;
                                     end;
                     end;
    write(fo,max,' ',start,' ',finis);
    close(fi);  close(fo);
end.