#include <bits/stdc++.h>
using namespace std;
int ans = 100000000;
string a[10];
void fun(int index, int n, int k) {
  if (index == n - 1) {
    int max1 = -1;
    int min1 = 100000000;
    for (int i = 0; i < k; i++) {
      int temp = 0;
      for (int j = 0; j < n; j++) {
        temp = temp * 10 + (a[i][j] - '0');
      }
      if (temp > max1) max1 = temp;
      if (temp < min1) min1 = temp;
    }
    ans = min(ans, max1 - min1);
    return;
  }
  for (int i = index; i < n; i++) {
    for (int j = 0; j < k; j++) {
      swap(a[j][index], a[j][i]);
    }
    fun(index + 1, n, k);
    for (int j = 0; j < k; j++) {
      swap(a[j][index], a[j][i]);
    }
  }
}
int main() {
  int n, k;
  scanf("%d%d", &n, &k);
  for (int i = 0; i < n; i++) cin >> a[i];
  fun(0, k, n);
  cout << ans;
  return 0;
}
