Cod sursa(job #58778)

Utilizator gozmanGrosu Andrei Nicolae gozman Data 7 mai 2007 12:47:54
Problema Secventa Scor 40
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.18 kb
program secvenata;
var  min1, min2,x,max:integer;
     n,inc,i,j,k,inc2,pinc,sf:longint;
     f:text;
begin
assign(f,'secventa.in'); reset(f);
readln(f,n,k);
i:=1;
min1:=maxint;
min2:=min1;
max:=-maxint;
inc:=1;
inc2:=inc+1;
while i<=n do
begin
      read(f,x);
      if x<min1 then begin min1:=x; inc2:=i+1; end
                else if x <min2 then  min2:=x;
       if i-inc+1>=k
       then
            begin
                  if max<min1 then
                  begin
                       max:=min1;
                       pinc:=inc;
                       sf:=i;
                 end;
                 if i-inc2+1=k then
                 if max<min2 then
                  begin
                       max:=min2;
                       pinc:=inc2;
                       sf:=i;
                 end;
                if (min2<>maxint)and (min1<min2) then
                 begin
                      min1:=min2;
                      inc:=inc2;
                      min2:=maxint;
                      inc2:=inc+1;
                end;
           end;
       i:=i+1;
end;
assign(f,'secventa.out'); rewrite(f);
writeln(f,pinc,' ',sf,' ',max);
close(f);
end.