fun main() = with(System.`in`.bufferedReader()) {
var (n,b,w) = readLine().split(" ").map{it.toInt()}
val str = readLine().toCharArray()
var i=0
var j=0
var curB = 0
var curW = 0
var maxLen = 0
while(j<n){
if(curB>b){
when(str[i]){
'W' -> curW--
'B' -> curB--
}
i++
}
else{
when(str[j]){
'W' -> curW++
'B' -> curB++
}
j++
}
if(curB<=b&&curW>=w){
maxLen = Math.max(maxLen,j-i)
}
}
println(maxLen)
}