#include <bits/stdc++.h>
using namespace std;
const int MAX = 2000 + 10;
const int Mod = (int)1e9 + 7;
int n, k;
char s[MAX];
long long f[MAX][MAX], g[MAX];
void update(long long& a, long long b) {
  a += b;
  if (a >= Mod) a -= Mod;
}
int main() {
  int i, j, l;
  scanf("%d%d", &n, &k);
  scanf("%s", s + 1);
  f[0][0] = 1;
  g[0] = 1;
  for ((i) = (1); (i) <= (n); ++(i)) {
    for ((j) = (0); (j) <= (k); ++(j))
      for (l = i - 1; l >= 0 && j + (i - l) * (n - i + 1) <= k; --l)
        update(f[i][j + (i - l) * (n - i + 1)], f[l][j] * ('z' - s[i]) % Mod);
    for ((j) = (0); (j) <= (k); ++(j))
      update(f[i][j], g[j] * (s[i] - 'a') % Mod);
    for ((j) = (0); (j) <= (k); ++(j)) update(g[j], f[i][j]);
  }
  cout << g[k] << endl;
  return 0;
}
