#include <bits/stdc++.h>
using namespace std;
int main() {
  int maxx = 0;
  int n, q, k, i, j, I;
  string s;
  cin >> q;
  for (I = 0; I < q; I++) {
    cin >> n >> k;
    cin >> s;
    vector<int> sr(n, 0);
    vector<int> sg(n, 0);
    vector<int> sb(n, 0);
    for (i = 0; i < n; i++) {
      if (i % 3 == 0) {
        if (s[i] == 'R') {
          if (i != 0) {
            sr[i] = sr[i - 1] + 1;
            sg[i] = sg[i - 1];
            sb[i] = sb[i - 1];
          } else
            sr[i] = 1;
        } else if (s[i] == 'G') {
          if (i != 0) {
            sg[i] = sg[i - 1] + 1;
            sr[i] = sr[i - 1];
            sb[i] = sb[i - 1];
          } else
            sg[i] = 1;
        } else {
          if (i != 0) {
            sb[i] = sb[i - 1] + 1;
            sr[i] = sr[i - 1];
            sg[i] = sg[i - 1];
          } else
            sb[i] = 1;
        }
      } else if (i % 3 == 1) {
        if (s[i] == 'G') {
          if (i != 0) {
            sr[i] = sr[i - 1] + 1;
            sg[i] = sg[i - 1];
            sb[i] = sb[i - 1];
          } else
            sr[i] = 1;
        } else if (s[i] == 'B') {
          if (i != 0) {
            sg[i] = sg[i - 1] + 1;
            sr[i] = sr[i - 1];
            sb[i] = sb[i - 1];
          } else
            sg[i] = 1;
        } else {
          if (i != 0) {
            sb[i] = sb[i - 1] + 1;
            sr[i] = sr[i - 1];
            sg[i] = sg[i - 1];
          } else
            sb[i] = 1;
        }
      } else {
        if (s[i] == 'B') {
          if (i != 0) {
            sr[i] = sr[i - 1] + 1;
            sg[i] = sg[i - 1];
            sb[i] = sb[i - 1];
          } else
            sr[i] = 1;
        } else if (s[i] == 'R') {
          if (i != 0) {
            sg[i] = sg[i - 1] + 1;
            sr[i] = sr[i - 1];
            sb[i] = sb[i - 1];
          } else
            sg[i] = 1;
        } else {
          if (i != 0) {
            sb[i] = sb[i - 1] + 1;
            sr[i] = sr[i - 1];
            sg[i] = sg[i - 1];
          } else
            sb[i] = 1;
        }
      }
    }
    maxx = 0;
    for (i = 0; i < (n - k + 1); i++) {
      int t1 = 0, t2 = 0, t3 = 0;
      for (j = i; j < (i + k); j++) {
        if (s[j] == sr[j - i]) {
          t1++;
        } else if (s[j] == sg[j - i]) {
          t2++;
        } else {
          t3++;
        }
      }
      if (i == 0) {
        t1 = sr[i + k - 1];
        t2 = sg[i + k - 1];
        t3 = sb[i + k - 1];
      } else {
        t1 = sr[i + k - 1] - sr[i - 1];
        t2 = sg[i + k - 1] - sg[i - 1];
        t3 = sb[i + k - 1] - sb[i - 1];
      }
      if (maxx < (max(t1, t2))) {
        maxx = max(t1, t2);
      }
      if (maxx < t3) maxx = t3;
    }
    cout << (k - maxx) << endl;
  }
}
