#include <bits/stdc++.h>
using namespace std;
int32_t main() {
  long long n;
  cin >> n;
  long long k;
  cin >> k;
  long long a[n + 1];
  long long i;
  for (i = 0; i < n; i++) {
    cin >> a[i];
  }
  string s;
  cin >> s;
  long long ans = 0;
  vector<long long> v;
  v.push_back(a[0]);
  for (i = 1; i < n;) {
    if (s[i] != s[i - 1]) {
      sort(v.begin(), v.end(), greater<long long>());
      long long j;
      for (j = 0; j < k && j < v.size(); j++) {
        ans = ans + v[j];
      }
      v.clear();
      v.push_back(a[i]);
      i++;
    } else {
      v.push_back(a[i]);
      i++;
    }
  }
  sort(v.begin(), v.end(), greater<long long>());
  long long j;
  for (j = 0; j < k && j < v.size(); j++) {
    ans = ans + v[j];
  }
  cout << ans << "\n";
}
