#L0811. 最小关闭区间长度

最小关闭区间长度

题目描述

已经晚上九点半了,小宝决定关掉卧室里所有的灯,然后上床睡觉。

卧室里有 nn 盏灯,编号从 11nn,排成一行。每次操作中,小宝可以选择一个整数 ii,并将编号从 ii(i+L1)(i+L-1)(两端均包含)的所有灯关掉,其中 LL 是一个预先确定的正整数。注意每次操作中 LL 的值必须相同。

给定所有灯的初始状态,请帮助小宝确定最小的 LL,使得他能够在 kk 次操作内关掉所有的灯。

输入格式

输入包含多组测试数据。第一行输入一个整数 TT,表示测试数据组数。对于每组测试数据:

第一行包含两个整数 nnkk1kn2×1051 \le k \le n \le 2 \times 10^5)。

第二行包含一个字符串 sss=n|s| = ns{<code>0’,</code>1’}s \in \{\text{<code>0'}, \text{</code>1'}\}),表示所有灯的初始状态。设 sis_iss 的第 ii 个字符,若 si=<code>1’s_i = \text{<code>1'} 则第 ii 盏灯初始为亮,否则为灭。保证 ss 中至少有一个 </code>1`。

保证所有测试数据的 nn 之和不超过 2×1062 \times 10^6

输出格式

对于每组测试数据输出一行,包含一个整数,表示最小的 LL

样例

2
10 4
0101011111
3 1
010
3

1

</p>
难度 普及-
通过率
尝试 0
已通过 0
ID
1539
类型
传统题
Time Limit
1000ms
Memory Limit
256MiB
上传者