#include <bits/stdc++.h>
using namespace std;
vector<int> cost;
map<string, int> mp;
int n, k;
int main() {
  string s;
  cin >> n >> k;
  cin >> s;
  queue<string> q;
  q.push(s);
  while (!q.empty() && cost.size() < k - 1) {
    string temp = q.front();
    q.pop();
    for (int i = 0; i < temp.length(); i++) {
      string new_str = temp.substr(0, i) + temp.substr(i + 1, n - i - 1);
      if (!mp[new_str]) {
        mp[new_str] = 1;
        cost.push_back(n - new_str.size());
        q.push(new_str);
      }
    }
  }
  if (cost.size() < k - 1) {
    cout << -1 << endl;
    return 0;
  }
  sort(cost.begin(), cost.end());
  int sum = 0;
  for (int i = 0; i < k - 1; i++) {
    sum += cost[i];
  }
  cout << sum << endl;
}
