//...START BY DOING WHAT IS NECESSARY, THEN WHAT IS POSSIBLE AND SUDDENLY YOU ARE DOING THE IMPOSSIBLE...
#include <bits/stdc++.h>
using namespace std;
#define FAST_FURIER ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
#define pb push_back
#define rep(i,a,N) for(ll i=a;i<N;i++)
typedef long long ll;
#define endl '\n'
#define M 1000000007
bool comp(int x,int y)
{
return x > y;
}
/*..............................code starts here........................*/
// S is the courage to continue that counts.
int main() {
FAST_FURIER;
int t=1;
cin >> t;
ll m,n,k;
string a,b;
while(t--)
{
cin >> n >> k >> a;
int zero = 0;
int flag = 0;
int start = 0,end = n-1,s1 = 0,s2 = 0;
if(!(a[0]-'0')){
rep(i,0,n){
if(a[i]=='1'){
start = i;
break;
}
else s1 += 1;
start = i+1;
}
}
if(!(a[n-1]-'0')){
for(int i=n-1;i>-1;i--){
if(a[i]=='1'){
end = i;
break;
}
else s2 += 1;
end = i-1;
}
}
if(start == n and end == -1){
cout <<0 << endl;
continue;
}
if(!k){
int zero = 0;
rep(i,0,n){
if(!(a[i]-'0')) ++zero;
}
cout << zero << endl;
continue;
}
//cout << s1 << " " << s2 << endl;
vector<int>vec;
int s=-1;
rep(i,start,end+1){
if(!(a[i]-'0')){
if(!flag){
start = i;
flag = 1;
}
}
else{
if(flag){
vec.pb(i-start);
flag = 0;
}
}
}
sort(vec.begin(),vec.end());
//rep(i,0,vec.size()) cout << vec[i] << " ";
//cout << endl;
while(k>0 and vec.size()){
// cout << vec.size() <<" " << vec.back() << endl;
if(!(s1+s2) and k == 1)
break;
if(vec.back() <= s1 or vec.back() <= s2){
if(s2 >= s1){
k -= 1;
s2 =0;
}
else{
k -= 1;
s1 = 0;
}
}
else{
if(k > 1){
k -= 2;
vec.pop_back();
}
else {
if(s1 >= s2) s1 =0;
else s2 = 0;
}
}
//cout << "k " << k << endl;
}
if(vec.size() == 0 and (s1+s2) != 0 and k != 0){
if(k > 1){
s1 = 0;
s2 = 0;
}
else if(k == 1){
if(s1 >= s2) s1 = 0;
else s2 = 0;
}
}
if(!vec.size() and !(s1+s2)) cout << 0 << endl;
else{
int sum = 0;
rep(i,0,vec.size()){
sum += vec[i];
}
cout << sum +s1+s2<< endl;
}
}
}
// Author : shihack
// g++ -std=c++17
Ly8uLi5TVEFSVCBCWSBET0lORyBXSEFUIElTIE5FQ0VTU0FSWSwgVEhFTiBXSEFUIElTIFBPU1NJQkxFIEFORCBTVURERU5MWSBZT1UgQVJFIERPSU5HIFRIRSBJTVBPU1NJQkxFLi4uIAojaW5jbHVkZSA8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKI2RlZmluZSBGQVNUX0ZVUklFUiBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsgY2luLnRpZSgwKTsgY291dC50aWUoMCk7CiNkZWZpbmUgcGIgcHVzaF9iYWNrCiNkZWZpbmUgcmVwKGksYSxOKSBmb3IobGwgaT1hO2k8TjtpKyspCnR5cGVkZWYgbG9uZyBsb25nIGxsOwojZGVmaW5lIGVuZGwgJ1xuJwojZGVmaW5lIE0gMTAwMDAwMDAwNwpib29sIGNvbXAoaW50IHgsaW50IHkpCnsKICAgIHJldHVybiB4ID4geTsgICAKfQoKCi8qLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uY29kZSBzdGFydHMgaGVyZS4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiovCi8vIFMgaXMgdGhlIGNvdXJhZ2UgdG8gY29udGludWUgdGhhdCBjb3VudHMuCgppbnQgbWFpbigpIHsKICAgIEZBU1RfRlVSSUVSOwogICAgaW50IHQ9MTsKICAgIGNpbiA+PiB0OwogICAgbGwgbSxuLGs7CiAgICBzdHJpbmcgYSxiOwogICAgd2hpbGUodC0tKSAgCiAgICB7CiAgICAgICAgY2luID4+IG4gPj4gayA+PiBhOwogICAgICAgIGludCB6ZXJvID0gMDsKICAgICAgICBpbnQgZmxhZyA9IDA7CiAgICAgICAgaW50IHN0YXJ0ID0gMCxlbmQgPSBuLTEsczEgPSAwLHMyID0gMDsKCiAgICAgICAgaWYoIShhWzBdLScwJykpewogICAgICAgICAgICByZXAoaSwwLG4pewogICAgICAgICAgICAgICAgaWYoYVtpXT09JzEnKXsKICAgICAgICAgICAgICAgICAgICBzdGFydCA9IGk7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBlbHNlIHMxICs9IDE7CiAgICAgICAgICAgICAgICBzdGFydCA9IGkrMTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZighKGFbbi0xXS0nMCcpKXsKICAgICAgICAgICAgZm9yKGludCBpPW4tMTtpPi0xO2ktLSl7CiAgICAgICAgICAgICAgICBpZihhW2ldPT0nMScpewogICAgICAgICAgICAgICAgICAgIGVuZCA9IGk7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBlbHNlIHMyICs9IDE7CiAgICAgICAgICAgICAgICBlbmQgPSBpLTE7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYoc3RhcnQgPT0gbiBhbmQgZW5kID09IC0xKXsKICAgICAgICAgICAgY291dCA8PDAgPDwgZW5kbDsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmKCFrKXsKICAgICAgICAgICAgaW50IHplcm8gPSAwOwogICAgICAgICAgICByZXAoaSwwLG4pewogICAgICAgICAgICAgICAgaWYoIShhW2ldLScwJykpICsremVybzsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb3V0IDw8IHplcm8gPDwgZW5kbDsKICAgICAgICAgICAgCiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICAvL2NvdXQgPDwgczEgPDwgIiAiIDw8IHMyIDw8IGVuZGw7CiAgICAgICAgCiAgICAgICAgdmVjdG9yPGludD52ZWM7CiAgICAgICAgaW50IHM9LTE7CiAgICAgICAgcmVwKGksc3RhcnQsZW5kKzEpewogICAgICAgICAgICBpZighKGFbaV0tJzAnKSl7CiAgICAgICAgICAgICAgICBpZighZmxhZyl7CiAgICAgICAgICAgICAgICAgICAgc3RhcnQgPSBpOwogICAgICAgICAgICAgICAgICAgIGZsYWcgPSAxOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2V7CiAgICAgICAgICAgICAgICBpZihmbGFnKXsKICAgICAgICAgICAgICAgICAgICB2ZWMucGIoaS1zdGFydCk7CiAgICAgICAgICAgICAgICAgICAgZmxhZyA9IDA7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc29ydCh2ZWMuYmVnaW4oKSx2ZWMuZW5kKCkpOwogICAgICAgIC8vcmVwKGksMCx2ZWMuc2l6ZSgpKSBjb3V0IDw8IHZlY1tpXSA8PCAiICI7CiAgICAgICAgLy9jb3V0IDw8IGVuZGw7CiAgICAgICAgd2hpbGUoaz4wIGFuZCB2ZWMuc2l6ZSgpKXsKICAgICAgICAgICAvLyBjb3V0IDw8IHZlYy5zaXplKCkgPDwiICIgPDwgdmVjLmJhY2soKSA8PCAgZW5kbDsKICAgICAgICAgICAgaWYoIShzMStzMikgYW5kIGsgPT0gMSkKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGlmKHZlYy5iYWNrKCkgPD0gczEgb3IgdmVjLmJhY2soKSA8PSBzMil7CiAgICAgICAgICAgICAgICBpZihzMiA+PSBzMSl7CiAgICAgICAgICAgICAgICAgICAgayAtPSAxOwogICAgICAgICAgICAgICAgICAgIHMyID0wOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZXsKICAgICAgICAgICAgICAgICAgICBrIC09IDE7CiAgICAgICAgICAgICAgICAgICAgczEgPSAwOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2V7CiAgICAgICAgICAgICAgICBpZihrID4gMSl7CiAgICAgICAgICAgICAgICAgICAgayAtPSAyOwogICAgICAgICAgICAgICAgICAgIHZlYy5wb3BfYmFjaygpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgaWYoczEgPj0gczIpIHMxID0wOwogICAgICAgICAgICAgICAgICAgIGVsc2UgczIgPSAwOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIC8vY291dCA8PCAiayAiIDw8IGsgPDwgZW5kbDsKICAgICAgICB9CiAgICAgICAgaWYodmVjLnNpemUoKSA9PSAwIGFuZCAoczErczIpICE9IDAgYW5kIGsgIT0gMCl7CiAgICAgICAgICAgIGlmKGsgPiAxKXsKICAgICAgICAgICAgICAgIHMxID0gMDsKICAgICAgICAgICAgICAgIHMyID0gMDsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIGlmKGsgPT0gMSl7CiAgICAgICAgICAgICAgICBpZihzMSA+PSBzMikgczEgPSAwOwogICAgICAgICAgICAgICAgZWxzZSBzMiA9IDA7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYoIXZlYy5zaXplKCkgYW5kICEoczErczIpKSBjb3V0IDw8IDAgPDwgZW5kbDsKICAgICAgICBlbHNlewogICAgICAgICAgICAKICAgICAgICAgICAgaW50IHN1bSA9IDA7CiAgICAgICAgICAgIHJlcChpLDAsdmVjLnNpemUoKSl7CiAgICAgICAgICAgICAgICBzdW0gKz0gdmVjW2ldOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvdXQgPDwgc3VtICtzMStzMjw8IGVuZGw7CiAgICAgICAgfQogICAgfQp9CgoKCgovLyBBdXRob3IgOiBzaGloYWNrCgovLyBnKysgLXN0ZD1jKysxNw==