function Main(input){
	input = input.split("\n").reverse();
  var a = input.pop();
  a = a.split(" ");
  var N = ~~a[0];
  var K = ~~a[1];
  
  input = input.map((b)=>~~b);
  input.sort((b,c)=>b-c);
  
  var min = 999999999;
  
  for(var i = 0; i + K - 1 < N; i++){
  	var mi = input[i];
    var ma = input[i + K - 1];
    var hoge = ma - mi;
    if(min > hoge){
    	min = hoge;
    }
  }
  
  return min;
}

// If you are interested in the algorithms I used, 
// there is no need to read down from this line.

((b,c,d)=>"undefined"!=typeof require?console.log(Main(require("fs").readFileSync("/dev/stdin","utf8"))):[b=b.split("\n").slice(1,-1).join("\n"),c=function(){try{return Main(b)}catch(f){return f.stack||f.message}}(),d=typeof c,"string"==d||(c=JSON.stringify(c)),$("<form>").append([[10,b],0,[1,d],0,[10,c]].map(f=>$(f?"<textarea>":"<br>",f&&{rows:f[0],cols:40,text:f[1]}))).appendTo("body")])(`
5 3
5
7
5
7
7
`);