#include <bits/stdc++.h>
using namespace std;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  long long n, k;
  cin >> n >> k;
  long long a[n];
  long long i, j;
  for (i = 0; i < n; i++) {
    cin >> a[i];
  }
  i = 0;
  long long ans = 0;
  string s;
  cin >> s;
  while (i < n) {
    if (i + 1 < n && s[i] == s[i + 1]) {
      long long c = 0;
      vector<long long> v;
      while (i + 1 < n && s[i] == s[i + 1]) {
        v.push_back(a[i]);
        i++;
        c++;
      }
      c += 1;
      v.push_back(a[i]);
      if (c <= k) {
        for (auto j : v) ans += j;
      } else {
        long long p = k;
        sort(v.begin(), v.end());
        for (int j = v.size() - 1; p > 0; j--, p--) {
          ans += v[j];
        }
      }
    } else
      ans += a[i];
    i++;
  }
  cout << ans;
  return 0;
}
