AT_abc124_d [ABC124D] Handstand
题目描述
有一个长为 $n$ 的字符串 $s$,只含 $0$ 和 $1$。
你可以进行最多 $k$ 次如下操作($0$ 次也可以):
- 选择字符串 $s$ 的一个子串,将其中的字符反转($0$ 变成 $1$,$1$ 变成 $0$)。
进行不超过 $k$ 次操作后,求最长的连续的 $1$ 的长度。
输入格式
第一行,$2$ 个正整数 $n,k$;
第二行,字符串 $s$。
输出格式
输出不超过 $k$ 次操作后,最长的连续的 $1$ 的长度。
### 数据约定
对于 $100\%$ 的数据:$1 \le n, k \le 10^5$。
字符串 $s$ 只由 $0$ 和 $1$ 组成,长度为 $n$。
说明/提示
### 制約
- $ N $ は $ 1\ \leq\ N\ \leq\ 10^5 $ を満たす整数である。
- $ K $ は $ 1\ \leq\ K\ \leq\ 10^5 $ を満たす整数である。
- 文字列 $ S $ の長さは $ N $ である。
- 文字列 $ S $ の各文字は `0` または `1` である。
### Sample Explanation 1
以下のように指示を行えば逆立ちした人を連続して $ 4 $ 人並ばせることができ、これが最大です。 - $ l\ =\ 1,\ r\ =\ 3 $ として指示を行う。その結果、左から $ 1,\ 2,\ 3 $ 番目の人の状態が反転する。
### Sample Explanation 3
一度も指示を行う必要はありません。