program walkway;
const MAXN=1000000;
type elenco=array[0..MAXN] of Longint;
var N,K,i:Longint;
H : elenco;
Procedure scambia (var a,b: Longint);
var x:Longint;
begin
x:=a;
a:=b;
b:=x;
end;
Procedure ordinamento (estremoi,estremos: Longint; var v : elenco; ordinato:boolean);
var inf, sup, medio:Longint;
pivot :Longint;
begin
inf:=estremoi;
sup:=estremos;
medio:= (estremoi+estremos) div 2;
pivot:=v[medio];
repeat
if (ordinato) then
begin
while (v[inf]<pivot) do inf:=inf+1;
while (v[sup]>pivot) do sup:=sup-1;
end;
if inf<=sup then
begin
scambia(v[inf],v[sup]);
inf:=inf+1;
sup:=sup-1;
end;
until inf>sup;
if (estremoi<sup) then ordinamento(estremoi,sup,v,ordinato);
if (inf<estremos) then ordinamento(inf,estremos,v,ordinato);
end;
function spread(N, K: longint; var H: elenco): longint;
var w, diff, mindiff:Longint;
begin
w:=0; mindiff:=1000005;
while w<N-K+1 do
begin
diff:= H[w+K-1] -H[w];
if diff<mindiff then mindiff:=diff;
w:=w+1;
end;
spread := mindiff;
end;
begin
readln(N, K);
for i:=0 to N-1 do read(H[i]);
readln;
ordinamento (0,N-1,H, true);
writeln(spread(N, K, H));
end.
cHJvZ3JhbSB3YWxrd2F5Owpjb25zdCBNQVhOPTEwMDAwMDA7CnR5cGUgZWxlbmNvPWFycmF5WzAuLk1BWE5dIG9mIExvbmdpbnQ7CnZhciBOLEssaTpMb25naW50OwogICAgSCA6IGVsZW5jbzsKCgpQcm9jZWR1cmUgc2NhbWJpYSAodmFyIGEsYjogTG9uZ2ludCk7CnZhciB4OkxvbmdpbnQ7CmJlZ2luCiAgIHg6PWE7CiAgIGE6PWI7CiAgIGI6PXg7CmVuZDsgIApQcm9jZWR1cmUgb3JkaW5hbWVudG8gKGVzdHJlbW9pLGVzdHJlbW9zOiBMb25naW50OyB2YXIgdiA6IGVsZW5jbzsgb3JkaW5hdG86Ym9vbGVhbik7CnZhciBpbmYsIHN1cCwgbWVkaW86TG9uZ2ludDsKICAgIHBpdm90IDpMb25naW50OwpiZWdpbgogICAgaW5mOj1lc3RyZW1vaTsKICAgIHN1cDo9ZXN0cmVtb3M7CiAgICBtZWRpbzo9IChlc3RyZW1vaStlc3RyZW1vcykgZGl2IDI7CiAgICBwaXZvdDo9dlttZWRpb107CiAgICByZXBlYXQKICAgICAgaWYgKG9yZGluYXRvKSB0aGVuCiAgICAgICAgIGJlZ2luCiAgICAgICAgICAgIHdoaWxlICh2W2luZl08cGl2b3QpIGRvICBpbmY6PWluZisxOwogICAgICAgICAgICB3aGlsZSAodltzdXBdPnBpdm90KSBkbyAgc3VwOj1zdXAtMTsKICAgICAgICAgZW5kOwogICAgICBpZiBpbmY8PXN1cCB0aGVuCiAgICAgICBiZWdpbgogICAgICAgICBzY2FtYmlhKHZbaW5mXSx2W3N1cF0pOwogICAgICAgICBpbmY6PWluZisxOwogICAgICAgICBzdXA6PXN1cC0xOwogICAgICAgZW5kOwogICAgdW50aWwgaW5mPnN1cDsKICAgIGlmIChlc3RyZW1vaTxzdXApIHRoZW4gb3JkaW5hbWVudG8oZXN0cmVtb2ksc3VwLHYsb3JkaW5hdG8pOwogICAgaWYgKGluZjxlc3RyZW1vcykgdGhlbiBvcmRpbmFtZW50byhpbmYsZXN0cmVtb3MsdixvcmRpbmF0byk7CmVuZDsKCmZ1bmN0aW9uIHNwcmVhZChOLCBLOiBsb25naW50OyB2YXIgSDogZWxlbmNvKTogbG9uZ2ludDsKdmFyIHcsIGRpZmYsIG1pbmRpZmY6TG9uZ2ludDsKICAKYmVnaW4KICAgIHc6PTA7IG1pbmRpZmY6PTEwMDAwMDU7CiAgICB3aGlsZSB3PE4tSysxIGRvCiAgICAgICAgICAgICAgYmVnaW4KICAgICAgICAgICAgICAgIGRpZmY6PSBIW3crSy0xXSAtSFt3XTsgCiAgICAgICAgICAgICAgICBpZiBkaWZmPG1pbmRpZmYgdGhlbiBtaW5kaWZmOj1kaWZmOyAKICAgICAgICAgICAgICAgIHc6PXcrMTsKICAgICAgICAgICAgICBlbmQ7ICAKICAgIHNwcmVhZCA6PSBtaW5kaWZmOwplbmQ7CmJlZ2luCglyZWFkbG4oTiwgSyk7CiAgICBmb3IgaTo9MCB0byBOLTEgZG8gcmVhZChIW2ldKTsKICAgIHJlYWRsbjsKICAgIG9yZGluYW1lbnRvICgwLE4tMSxILCB0cnVlKTsKICAgIHdyaXRlbG4oc3ByZWFkKE4sIEssIEgpKTsKZW5kLg==