local mmi, mma = math.min, math.max local bls, brs = bit.lshift, bit.rshift local kr, kb = io.read("*n", "*n", "*l") local s = io.read() local red, blue = {}, {} local t = {} local use = {} for i = 1, 30 do use[i] = true t[i] = s:sub(i, i) if t[i] == "R" then table.insert(red, i) elseif t[i] == "B" then table.insert(blue, i) end end local ret = 10 local tot = bls(1, 20) for i = 0, tot - 1 do local ti = i for j = 1, 10 do local tgt = red[j] use[tgt] = ti % 2 == 1 ti = brs(ti, 1) end for j = 1, 10 do local tgt = blue[j] use[tgt] = ti % 2 == 1 ti = brs(ti, 1) end local w = {} for j = 1, 30 do if use[j] then table.insert(w, t[j]) end end local valid = true for j = 1, #w - kr do if w[j] == "R" and w[j + kr] == "R" then valid = false break end end for j = 1, #w - kb do if w[j] == "B" and w[j + kb] == "B" then valid = false break end end if valid then ret = mma(ret, #w) end end print(ret)