欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
CF2173A.Sleeping Through Classes
Sleeping Through Classes
题目描述
你今天有 节课,编号从 到 。
这些课程由一个长度为 的二进制字符串 描述。我们称第 节课为重要课当且仅当 。对于每一节重要课,你必须保持清醒并听课。
你非常疲倦,想尽可能多地在课上睡觉。然而,入睡需要时间。如果你听了一节重要课 ,那么接下来的 节课你都无法入睡,也就是说你必须在第 节课中保持清醒(如果后面的课程少于 节,则直到今天上完为止)。
对于不重要的课程,你可以选择睡觉,除非前面的规则要求你保持清醒。
你的任务是计算今天最多能睡多少节课。
二进制字符串是指字符串中的每个字符都是 或 。
输入格式
每个测试用例包含多组数据。第一行为测试用例数 ()。
每组测试数据的第一行为两个整数 和 ()。
每组测试数据的第二行为一个长度为 的字符串 ( 或 )。
输出格式
对于每组测试数据,输出一个整数,表示你今天最多能睡多少节课。
说明/提示
在第一个测试用例中,你必须听第 节课和第 节课。听完第 节课后,第 节课你无法入睡。所以你唯一能睡觉的是第 节课。
在第二个测试用例中,你可以睡过所有课程。
在第四个测试用例中,你只能睡第 节课和第 节课。
由 ChatGPT 5 翻译
样例
4
4 1
1001
3 3
000
3 1
001
8 2
01000101
1
3
2
2
在线编程 IDE
建议全屏模式获得最佳体验
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |