fun main(args: Array<String>) {
    abc115c()
}

/*
 木をソート → 一番左からN本選んでmax-minを計算 を右にずらしていって全部探索 → その最小値を求める
 */

fun abc115c() {
    val (n, k) = readLine()!!.split(" ").map { it.toInt() }
    val treeHeights = (1..n).map { readLine()!!.toLong() }

    val sortedTreeHeights = treeHeights.sorted()

    val answer = (0..(n - k)).map {
        val minHeight = sortedTreeHeights[it]
        val maxHeight = sortedTreeHeights[it + k - 1]
        maxHeight - minHeight
    }.min()

    println(answer)
}
