#include<bits/stdc++.h>
using namespace std;
char track[1005];
int dp[1005][1000];
int memo[1005]; //for bullets track
int minDistance(int i,int bullets)
{
if(track[i]=='S'&&bullets>=0)
return 0;
if(bullets<0||i<0)
return 10000;
if(memo[i]!=1000)
{
if(dp[i][memo[i]]!=10000&&bullets>=memo[i])
return dp[i][memo[i]];
}
if(track[i]=='#')
return minDistance(i-1,bullets-1) + 1;
for(int k=0;k<i;k++)
{
dp[i][bullets] = min(dp[i][bullets],minDistance(k,bullets)+(i-k)*2+4);
}
/* for(int k=i-1;k>=0;k--)
{
dp[i][bullets] = min(dp[i][bullets],minDistance(k,bullets)+(i-k)*2+4);
}*/
dp[i][bullets] = min(dp[i][bullets],minDistance(i-1,bullets)+1);
if(dp[i][memo[i]]>dp[i][bullets])
memo[i] = min(memo[i],bullets);
return dp[i][bullets];
}
int main()
{
int t,n,bullets;
scanf("%d",&t);
while(t--)
{
scanf("%d%d%s",&n,&bullets,&track);
for(int i=0;i<=n;i++)
for(int j=0;j<=bullets;j++)
dp[i][j] = 10000;
for(int i=0;i<=n;i++)
memo[i]=10000;
printf("%d\n",minDistance(n-1,bullets));
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNoYXIgdHJhY2tbMTAwNV07CmludCBkcFsxMDA1XVsxMDAwXTsKaW50IG1lbW9bMTAwNV07IC8vZm9yIGJ1bGxldHMgdHJhY2sKaW50IG1pbkRpc3RhbmNlKGludCBpLGludCBidWxsZXRzKQp7CiAgIGlmKHRyYWNrW2ldPT0nUycmJmJ1bGxldHM+PTApCiAgIHJldHVybiAwOwoKICAgaWYoYnVsbGV0czwwfHxpPDApCiAgIHJldHVybiAxMDAwMDsKCiAgIGlmKG1lbW9baV0hPTEwMDApCiAgIHsKICAgIGlmKGRwW2ldW21lbW9baV1dIT0xMDAwMCYmYnVsbGV0cz49bWVtb1tpXSkKICAgIHJldHVybiBkcFtpXVttZW1vW2ldXTsKICAgfQoKCiAgIGlmKHRyYWNrW2ldPT0nIycpCiAgIHJldHVybiBtaW5EaXN0YW5jZShpLTEsYnVsbGV0cy0xKSArIDE7CgogICBmb3IoaW50IGs9MDtrPGk7aysrKQogICB7CiAgICBkcFtpXVtidWxsZXRzXSA9IG1pbihkcFtpXVtidWxsZXRzXSxtaW5EaXN0YW5jZShrLGJ1bGxldHMpKyhpLWspKjIrNCk7CiAgIH0KICAgLyogZm9yKGludCBrPWktMTtrPj0wO2stLSkKICAgewogICAgICAgZHBbaV1bYnVsbGV0c10gPSBtaW4oZHBbaV1bYnVsbGV0c10sbWluRGlzdGFuY2UoayxidWxsZXRzKSsoaS1rKSoyKzQpOwogICB9Ki8KICAgZHBbaV1bYnVsbGV0c10gPSBtaW4oZHBbaV1bYnVsbGV0c10sbWluRGlzdGFuY2UoaS0xLGJ1bGxldHMpKzEpOwogICAKICAgaWYoZHBbaV1bbWVtb1tpXV0+ZHBbaV1bYnVsbGV0c10pCiAgIG1lbW9baV0gPSBtaW4obWVtb1tpXSxidWxsZXRzKTsKCiAgIHJldHVybiBkcFtpXVtidWxsZXRzXTsKfQppbnQgbWFpbigpCnsKICAgIGludCB0LG4sYnVsbGV0czsKICAgIHNjYW5mKCIlZCIsJnQpOwogICAgd2hpbGUodC0tKQogICAgewoKICAgICAgICBzY2FuZigiJWQlZCVzIiwmbiwmYnVsbGV0cywmdHJhY2spOwoKICAgICAgICBmb3IoaW50IGk9MDtpPD1uO2krKykKICAgICAgICBmb3IoaW50IGo9MDtqPD1idWxsZXRzO2orKykKICAgICAgICBkcFtpXVtqXSA9IDEwMDAwOwogICAgICAgIAogICAgICAgIGZvcihpbnQgaT0wO2k8PW47aSsrKQogICAgICAgIG1lbW9baV09MTAwMDA7CgogICAgICAgIHByaW50ZigiJWRcbiIsbWluRGlzdGFuY2Uobi0xLGJ1bGxldHMpKTsKICAgIH0KICAgIHJldHVybiAwOwp9Cg==
MTAKNyAzClMwMDAwMEUKMiAyClNFCjQgMQpTMDBFCjggMQpTMDAwMCMjRQo4IDMKUzAjMDAjMEUKNyAyClMwIzAjI0UKMTAgNApTMDAjMCMwIyNFCjUgMgpTMDAwRQo3IDEKUzAjIzAwRQo5IDAKUzAwMDAjIzBF
10
7 3
S00000E
2 2
SE
4 1
S00E
8 1
S0000##E
8 3
S0#00#0E
7 2
S0#0##E
10 4
S00#0#0##E
5 2
S000E
7 1
S0##00E
9 0
S0000##0E