#include <bits/stdc++.h>
using namespace std;
#define faster ios_base::sync_with_stdio(false); cin.tie(NULL)
#define Bit(mask , i) ((mask >> i) & 1)
#define fi first
#define se second
#define _LOG2(nl) 31 - __builtin_clz(nl)
#define c_bit(nl) __builtin_popcount(nl)
#define li pair<long long , int>
#define db double
#define onBit(mask , i) (mask | (1 << i))
#define offBit(mask , i) (mask & (~(1 << i)))
const long long MOD = 1e9 + 7;
const long long INF = 1e14;
const int N = 8e3 + 7;
int n , k , t;
string s;
int pre_1[N] , pre_2[N] , pre_3[N] , suf_1[N] , suf_2[N] , suf_3[N];
void inp(){
cin >> n >> k >> t;
cin >> s;
s = "L" + s;
for (int i = 1 ; i <= n ; ++i){
if (s[i] == '3') pre_3[i] = pre_3[i - 1] + 1;
else pre_3[i] = pre_3[i - 1];
if (s[i] == '1') pre_1[i] = pre_1[i - 1] + 1;
else pre_1[i] = pre_1[i - 1];
if (s[i] == '2') pre_2[i] = pre_2[i - 1] + 1;
else pre_2[i] = pre_2[i - 1];
}
for (int i = n ; i >= 1 ; --i){
if (s[i] == '3') suf_3[i] = suf_3[i + 1] + 1;
else suf_3[i] = suf_3[i + 1];
if (s[i] == '1') suf_1[i] = suf_1[i + 1] + 1;
else suf_1[i] = suf_1[i + 1];
if (s[i] == '2') suf_2[i] = suf_2[i + 1] + 1;
else suf_2[i] = suf_2[i + 1];
}
}
int check(int i , int j){
int cnt = 0;
cnt += pre_2[i + t - 1] - pre_2[i - 1];
cnt += pre_1[i + t - 1] - pre_1[i - 1];
cnt += suf_2[j - t + 1] - suf_2[j + 1];
cnt += suf_1[j - t + 1] - suf_1[j + 1];
cnt += pre_1[i - 1];
cnt += suf_1[j + 1];
return cnt;
}
void solve(){
if (pre_1[n] <= k){
k -= pre_1[n];
if (pre_2[n] <= k){
cout << n;
return;
}
cout << n - pre_2[n] + k;
return;
}
int res = -1;
for (int i = 1 ; i <= n - 2 * t ; ++i){
for (int j = i + 2 * t ; j <= n ; ++j){
int tmp = check(i , j);
if (tmp > k) continue;
int add = 0;
if (tmp < k) add = min(k - tmp , pre_2[i - 1] + suf_2[j + 1]);
res = max(res , pre_3[i - 1] + suf_3[j + 1] + pre_1[i - 1] + suf_1[j + 1] + add);
// cout << i << " " << j << " " << tmp << " " << pre_3[i - 1] + suf_3[j + 1] + pre_1[i - 1] + suf_1[j + 1] + add << '\n';
}
}
cout << res;
}
int main(){
// freopen("xhmax.inp" , "r" , stdin);
// freopen("xhmax.out" , "w" , stdout);
faster;
inp();
solve();
return 0;
}