#include <bits/stdc++.h>   using namespace std;   const int max_n = 100000;   int n, k;   char s[max_n + 5];   void solve(void);   int main(void) {     int t;     scanf( %d , &t);     while (t--) solve();     return 0;   }   void solve(void) {     scanf( %d%d , &n, &k);     scanf( %s , s);     int i, j, t, ans = 0;     int lcnt = 0;     for (i = 0; i < n; i++) {       if (s[i] ==  W ) {         if (i > 0 && s[i - 1] ==  W )           ans += 2;         else           ans++;       } else         lcnt++;     }     if (lcnt == n) {       if (!k)         printf( 0 n );       else         printf( %d n , 2 * k - 1);       return;     }     i = 0;     vector<int> gap;     while (i < n) {       if (s[i] ==  L ) {         i++;         continue;       }       j = i;       while (j < n && s[j] ==  W ) j++;       t = j;       while (t < n && s[t] ==  L ) t++;       if (t >= n) break;       gap.push_back(t - j);       i = t;     }     sort(gap.begin(), gap.end());     for (i = 0; k && i < (int)gap.size(); i++) {       if (gap[i] <= k) {         k -= gap[i];         lcnt -= gap[i];         ans += 2 * gap[i] + 1;       } else {         lcnt -= k;         ans += 2 * k;         k = 0;       }     }     if (k) {       ans += min(k, lcnt) * 2;     }     printf( %d n , ans);   }   