CFCF2173A.Sleeping Through Classes

入门

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

你今天有 nn 节课,编号从 11nn

这些课程由一个长度为 nn 的二进制字符串 ss 描述。我们称第 ii 节课为重要课当且仅当 si=1s_i = 1。对于每一节重要课,你必须保持清醒并听课。

你非常疲倦,想尽可能多地在课上睡觉。然而,入睡需要时间。如果你听了一节重要课 ii,那么接下来的 kk 节课你都无法入睡,也就是说你必须在第 i+1,i+2,,i+ki+1, i+2, \ldots, i+k 节课中保持清醒(如果后面的课程少于 kk 节,则直到今天上完为止)。

对于不重要的课程,你可以选择睡觉,除非前面的规则要求你保持清醒。

你的任务是计算今天最多能睡多少节课。

^\text{∗}二进制字符串是指字符串中的每个字符都是 0011

输入格式

每个测试用例包含多组数据。第一行为测试用例数 tt1t5001 \le t \le 500)。
每组测试数据的第一行为两个整数 nnkk1n,k1001 \le n, k \le 100)。
每组测试数据的第二行为一个长度为 nn 的字符串 sssi=0s_i = 0si=1s_i = 1)。

输出格式

对于每组测试数据,输出一个整数,表示你今天最多能睡多少节课。

输入输出样例

  • 输入#1

    4
    4 1
    1001
    3 3
    000
    3 1
    001
    8 2
    01000101

    输出#1

    1
    3
    2
    2

说明/提示

在第一个测试用例中,你必须听第 11 节课和第 44 节课。听完第 11 节课后,第 22 节课你无法入睡。所以你唯一能睡觉的是第 33 节课。

在第二个测试用例中,你可以睡过所有课程。

在第四个测试用例中,你只能睡第 11 节课和第 55 节课。

首页