Cod sursa(job #742140)

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

Function maxim(a,b:longint):longint;
begin
    if a>b then maxim:=a
           else begin
                maxim:=b;
                start:=i;
                end;
end;

begin
    assign(fi,'ssm.in'); reset(fi); readln(fi,n);
    assign(fo,'ssm.out'); rewrite(fo);
    read(fi,sum); max:=sum;
    start:=1; finis:=1;

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