欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
CF1009A.Game Shopping
Game Shopping
题目描述
Maxim 想在本地游戏商店购买一些游戏。商店里有 款游戏,第 款游戏的价格为 。
Maxim 的钱包可以表示为一个整数数组。他的钱包里有 张钞票,第 张钞票的面值为 。
商店里的游戏从左到右排列,Maxim 会按照这个顺序依次尝试购买每一款游戏。
当 Maxim 站在商店的第 个位置时,他会从钱包里取出第一张钞票(如果钱包已经空了,则直接跳到下一个位置),并尝试用这张钞票购买第 款游戏。在尝试购买完第 款游戏后,Maxim 离开商店。
只有当钱包中第一张钞票的面值大于等于第 款游戏的价格时,Maxim 才能买下第 款游戏。如果成功购买,则这张钞票会从钱包中消失,下一张钞票成为新的第一张。否则,Maxim 会把这张钞票留在钱包中(它仍然是第一张),然后继续尝试购买下一款游戏。
例如,对于数组 和数组 ,过程如下:Maxim 用第一张面值为 的钞票买下了第一款游戏,这张钞票消失,第二张面值为 的钞票成为第一张;然后 Maxim 发现第二款游戏 ,无法购买,第三款游戏同理;接着他用面值为 的钞票买下了第四款游戏,第三张钞票成为第一张;最后他用面值为 的钞票买下了第五款游戏。
你的任务是计算 Maxim 最终能买下多少款游戏。
输入格式
输入的第一行包含两个整数 和 (),分别表示游戏的数量和 Maxim 钱包中钞票的数量。
第二行包含 个整数 (),其中 表示第 款游戏的价格。
第三行包含 个整数 (),其中 表示 Maxim 钱包中第 张钞票的面值。
输出格式
输出一个整数,表示 Maxim 能买下的游戏数量。
说明/提示
第一个样例已在题目描述中详细说明。
第二个样例中,Maxim 钱包中第一张钞票的面值小于商店中所有游戏的价格,因此他一款游戏也买不了。
第三个样例中,Maxim 钱包中钞票的面值足够大,可以买下遇到的所有游戏,直到钱包里的钞票用完为止。
由 ChatGPT 4.1 翻译
样例
5 4
2 4 5 2 4
5 3 4 6
3
5 2
20 40 50 20 40
19 20
0
6 4
4 8 15 16 23 42
1000 1000 1000 1000
4
在线编程 IDE
建议全屏模式获得最佳体验
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |