Cod sursa(job #38297)

Utilizator M@2Te4iMatei Misarca M@2Te4i Data 25 martie 2007 17:04:05
Problema Secventa 2 Scor 10
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.87 kb
program secv2;

type sir=array[1..50001]of integer;

var e,sk,maxk:sir;
    i,k,n,s,max,pc,ps,pf:longint;

procedure citire;
begin
assign(input,'secv2.in');
reset(input);
readln(n,k);
for i:=1 to n do
    read(e[i]);
close(input);
end;

procedure rezolvare;
begin
s:=0;
for i:=1 to k do
    s:=s+e[i];
sk[k]:=s;
maxk[k]:=s;
max:=s;
ps:=1;
pf:=k;
pc:=1;
for i:=k+1 to n do
    begin
    sk[i]:=sk[i-1]+e[i]-e[i-k];
    if maxk[i-1]+e[i]>sk[i] then
       maxk[i]:=maxk[i-1]+e[i]
       else begin
            maxk[i]:=sk[i];
            pc:=i-k+1;
            end;
    if maxk[i]>max then
       begin
       max:=maxk[i];
       ps:=pc;
       pf:=i;
       end;
    end;
end;

procedure scriere;
begin
assign(output,'secv2.out');
rewrite(output);
writeln(ps,' ',pf,' ',max);
close(output);
end;

begin
citire;
rezolvare;
scriere;
end.