#include <bits/stdc++.h>
int main() {
  int n, m, i, j, dif, temp, min = 100000;
  scanf("%d %d", &n, &m);
  int ara[m];
  for (i = 0; i < m; i++) {
    scanf("%d", &ara[i]);
  }
  for (i = 1; i < m; i++) {
    for (j = 0; j < m - i; j++) {
      if (ara[j] > ara[j + 1]) {
        temp = ara[j];
        ara[j] = ara[j + 1];
        ara[j + 1] = temp;
      }
    }
  }
  int result[m - n + 1];
  if (m - n == 0) {
    printf("%d\n", ara[m - 1] - ara[0]);
  } else {
    for (i = 1; i <= m - n + 1; i++) {
      result[i - 1] = ara[i - 1 + (n - 1)] - ara[i - 1];
    }
    for (i = 0; i < m - n + 1; i++) {
      if (min >= result[i]) min = result[i];
    }
    printf("%d\n", min);
  }
  return 0;
}
