#abc124d. [abc124_d]Handstand
[abc124_d]Handstand
问题描述
有 个人从左到右排成一排。
给定长度为 的字符串 ,由 0
和 1
组成,并给定正整数 。
如果第 个人从左边起站立在地上时,字符串 的第 个字符是 0
;如果该字符为 1
,表示第 个人站立在手上。
你可以给出最多 次指令(也可以不给),每次指令如下:
指令:选择满足 的整数 和 ,将第 、、、 个人翻转。即,对于每个 ,原本站在地上的第 个人现在站在手上,原本站在手上的第 个人现在站在地上。
请找出在至多 次指令之后,连续站在手上的人数的最大可能值。
约束条件
- 是一个整数,满足 。
- 是一个整数,满足 。
- 字符串 的长度为 。
- 字符串 的每个字符是
0
或1
。
输入
输入以以下格式从标准输入给出:
输出
打印在至多 次指令之后,连续站在手上的人数的最大可能值。
示例输入 1
5 1
00010
示例输出 1
4
通过以下指令,我们可以使得连续四个人站在手上,这是最大的结果:
- 给出指令 ,翻转从左边起的第一个、第二个和第三个人。
示例输入 2
14 2
11101010110011
示例输出 2
8
示例输入 3
1 1
1
示例输出 3
1
不需要任何指令。