Cod sursa(job #131857)

Utilizator vladianavladiana micu vladiana Data 4 februarie 2008 16:20:40
Problema Secventa 2 Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.97 kb
var fi,fo:text;
    i,n,k,max,j,pozi,pozf,su:longint;
    vl,sdr:array[0..50001]of longint;
begin
  assign(fi,'secv2.in'); reset(fi);
  assign(fo,'secv2.out'); rewrite(fo);
  read(fi,n,k);
  for i:=1 to n do
    read(fi,vl[i]);
  max:=0;
  for i:=n downto 1 do
    begin
      if sdr[i+1]>=0 then sdr[i]:=sdr[i+1]+vl[i]
                     else sdr[i]:=vl[i];
      if sdr[i]>max then max:=sdr[i];
    end;
  if n=k then
    begin
      su:=0;
      for i:=1 to n do
        su:=su+vl[i];
      write(fo,1,' ',n,' ',su);
    end
   else
     begin
       for i:=1 to n-k do
        if sdr[i]=max then
          begin
            su:=0;
            for j:=i to n do
             begin
              su:=su+vl[j];
              if su=max then
               begin
                 pozi:=i;
                 pozf:=j;
               end;
             end;
          end;
       write(fo,pozi,' ',pozf,' ',max);
     end;
  close(fi);
  close(fo);
end.