#include <bits/stdc++.h>
using namespace std;
const long long int M = 1e3 + 7;
long long int flag[M][M];
int main() {
  long long int n, m;
  scanf("%lld", &n);
  scanf("%lld", &m);
  long long int i, j;
  string s[n + 10];
  for (i = 0; i < n; i++) {
    cin >> s[i];
  }
  long long int temp = 0, ans = 0;
  for (i = 0; i < m; i++) {
    temp = 0;
    for (j = 0; j < n - 1; j++) {
      if (s[j][i] > s[j + 1][i] && flag[j][j + 1] == 0) {
        temp = 1;
        ans++;
        break;
      }
    }
    if (temp == 0) {
      for (j = 0; j < n - 1; j++)
        if (s[j][i] < s[j + 1][i]) flag[j][j + 1] = 1;
    }
  }
  cout << ans << endl;
  return 0;
}
