#include <bits/stdc++.h>
using namespace std;
int a[10][10];
int num[10];
int ans;
int now;
int n, k;
char ch;
int fuck[10];
int main() {
  while (cin >> n >> k) {
    ans = 999999999;
    for (int i = 0; i < n; i++) {
      for (int j = 0; j < k; j++) {
        cin >> ch;
        a[i][j] = ch - '0';
      }
    }
    for (int i = 0; i < k; i++) {
      fuck[i] = i;
    }
    do {
      memset(num, 0, sizeof(num));
      for (int i = 0; i < n; i++) {
        for (int j = 0; j < k; j++) {
          num[i] = num[i] * 10 + a[i][fuck[j]];
        }
      }
      now = -999999999;
      for (int i = 0; i < n; i++) {
        for (int j = 0; j < n; j++) {
          if (i == j) {
            continue;
          }
          now = ((now) > (num[i] - num[j]) ? (now) : (num[i] - num[j]));
        }
      }
      ans = ((now) < (ans) ? (now) : (ans));
    } while (next_permutation(fuck, fuck + k));
    if (ans == -999999999) {
      ans = 0;
    }
    cout << ans << endl;
  }
}
