#include <bits/stdc++.h>
using namespace std;
template <class IT>
inline void cmax(IT &a, IT b) {
  if (a < b) a = b;
}
template <class IT>
inline void cmin(IT &a, IT b) {
  if (b < a) a = b;
}
template <class IT>
inline bool bmax(IT &a, IT b) {
  if (a < b) {
    a = b;
    return true;
  } else
    return false;
}
template <class IT>
inline bool bmin(IT &a, IT b) {
  if (a > b) {
    a = b;
    return true;
  } else
    return false;
}
const int N = 1048576;
int A[N], B[20][20];
inline void ac() {
  int n, m, i, a, b, s, al, d;
  string st;
  cin >> n >> m >> st;
  al = (1 << m) - 1;
  for (i = (1); i < (n); ++i) {
    a = st[i - 1] - 'a';
    b = st[i] - 'a';
    ++B[a][b];
    ++B[b][a];
  }
  for (s = (1); s <= (al); ++s) {
    d = 1000000005;
    for (a = (0); a < (m); ++a)
      if (s >> a & 1) cmin(d, A[1 << a ^ s]);
    for (a = (0); a < (m); ++a)
      if (s >> a & 1)
        for (b = (0); b < (m); ++b)
          if (!(s >> b & 1)) d += B[a][b];
    A[s] = d;
  }
  cout << d;
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(NULL);
  ac();
  return 0;
}
