CF BUDDY
← Problems·

1690D · Black and White Stripe

1000 · implementation, two pointers

Problem: You have a stripe of checkered paper of length nn. Each cell is either white or black.

What is the minimum number of cells that must be recolored from white to black in order to have a segment of kk consecutive black cells on the stripe?

If the input data is such that a segment of kk consecutive black cells already exists, then print 0.

Input Format: The first line contains an integer tt (1t1041 \le t \le 10^4) — the number of test cases.

Next, descriptions of tt test cases follow.

The first line of the input contains two integers nn and kk (1kn21051 \le k \le n \le 2\cdot10^5). The second line consists of the letters 'W' (white) and 'B' (black). The line length is nn.

It is guaranteed that the sum of values nn does not exceed 21052\cdot10^5.

Output Format: For each of tt test cases print an integer — the minimum number of cells that need to be repainted from white to black in order to have a segment of kk consecutive black cells.

Note: In the first test case, ss="BBWBW" and k=3k=3. It is enough to recolor s3s_3 and get ss="BBBBW". This string contains a segment of length k=3k=3 consisting of the letters 'B'.

In the second test case of the example ss="BBWBW" and k=5k=5. It is enough to recolor s3s_3 and s5s_5 and get ss="BBBBB". This string contains a segment of length k=5k=5 consisting of the letters 'B'.

In the third test case of the example ss="BBWBW" and k=1k=1. The string ss already contains a segment of length k=1k=1 consisting of the letters 'B'.

Sample Cases

Case 1

Input

4
5 3
BBWBW
5 5
BBWBW
5 1
BBWBW
1 1
W

Output

1
2
0
1

Similar problems

00:00:00
Loading editor…
Welcome! I'm your coding tutor for this problem. Use the chips below to reveal stored hints or get AI feedback on your code. I'll guide you step by step — never giving away the solution.

Sign in to unlock AI tutor feedback