3. 摘葡萄 【题目描述】 葡萄架上的葡萄熟了,小明要去摘葡萄,已知葡萄架上每串葡萄的高度和小明伸 手可以够到的高度(高度值均为厘米),只要手能够到就可以摘下。另外,小明还带 了一个 30 厘米高的小凳子,可以站在凳子上摘葡萄。 小明的力气有限,已知小明最初的力气值 n,站在地上摘一串葡萄耗费 1 个力气 值,站在小凳上摘葡萄耗费 2 个力气值,力气值不够就不能摘了。 请帮助计算一下小明在力气值耗尽前最多可以摘下多少串葡萄。 【输入格式】 第一行由空格隔开的三个整数 h,n,m,0<h<256,0<n<256,0<m<256,为小明站 在地面伸手可够到的高度、初始力气值和架上葡萄的总串数。 第二行由空格隔开的每串葡萄的高度值,为 1 到 255 间的整数。 【输出格式】 一个整数,为可以摘到葡萄的串数。 【样例输入】(测试数据不包含本样例) 140 10 13 130 135 120 155 190 140 130 180 170 150 110 200 130 【样例输出】 8
时间: 2024-04-16 18:28:01 浏览: 33
葡萄的作文500字4篇.docx
```python
def count_grapes(h, n, m, heights):
count = 0 # 记录摘到的葡萄的串数
for height in heights:
if height <= h:
count += 1
n -= 1
elif height <= h + 30 and n >= 2:
count += 1
n -= 2
if n <= 0:
break
return count
# 获取输入
h, n, m = map(int, input().split())
heights = list(map(int, input().split()))
# 调用函数计算结果并输出
result = count_grapes(h, n, m, heights)
print(result)
```
以上代码实现了根据输入的信息计算小明最多可以摘到多少串葡萄的功能。你可以将这段代码复制到你的编辑器中运行,然后输入样例输入进行测试。
阅读全文