#include <bits/stdc++.h>
using namespace std;
#define int long long
const int INF = 1e18;
const int MAXN = 5e3 + 5;
int n,k;
string s;
int pozb[MAXN];
int dp[MAXN][MAXN];
int calc(int old, int tot)
{
int aux = 0;
for(int u=old+1;u<=tot;u++)
{
aux += max((int)0, tot - pozb[u]);
}
return aux;
}
signed main()
{
ios_base::sync_with_stdio(0);cin.tie(0);
cin>>n>>k>>s;
assert(s.size() == 2 * n);
int cnta = 0, cntb = 0;
for(int i=0;i<2*n;i++)
{
if(s[i] == 'A')
{
cnta++;
}
else
{
cntb++;
pozb[cntb] = cnta;
}
}
//for(int i=1;i<=n;i++)cerr<<pozb[i]<<" ";cerr<<"pozb\n";
assert(cnta == n && cntb == n);
for(int i=0;i<=n;i++)
for(int cnt=0;cnt<=k;cnt++)
dp[i][cnt] = INF;
dp[0][0] = 0;
for(int i=1;i<=n;i++)
{
for(int cnt=1;cnt<=k;cnt++)
{
for(int old=0;old<i;old++)
{
dp[i][cnt] = min(dp[i][cnt], dp[old][cnt-1] + calc(old, i));
}
}
}
cout<<dp[n][k];
return 0;
}