program task_b; {$APPTYPE CONSOLE} uses SysUtils; var n,k,i:longint; d:array[1..1000000] of int64; f:text; min:int64; procedure QSort(l,r:longint); var buf:int64; key,i,j:longint; begin if (lkey) do dec(j); if (i<=j) then begin buf:=d[i]; d[i]:=d[j]; d[j]:=buf; inc(i); dec(j); end; end; QSort(l,j); QSort(i,r); end; end; begin assign(f,'holy.in'); reset(f); readln(f,n,k); for i:=1 to n do read(f,d[i]); close(f); QSort(1,n); //for i:=1 to n do write(d[i],' '); //readln; min:=1000000001; for i:=1 to n do begin if ((i+k-1)>n) then break; if (min>(d[i+k-1]-d[i])) then min:=d[i+k-1]-d[i]; end; assign(f,'holy.out'); rewrite(f); writeln(f,min); close(f); { TODO -oUser -cConsole Main : Insert code here } end.