A29120. 捡石头
填空题
较易
知识点
题目描述
捡石头
题目描述
小强在河边捡了 2 块漂亮的石头,他想再捡两块石头,让这 4 块石头的质量正好 为 30 斤,并且新捡的两块石头的质量是介于前两块石头的质量之间的数字,请编程 输出第 3 块和第 4 块石头的质量。注:每个石头的重量都是整数,如果找不到合适 的石头,则输出 0 0。
输入格式
输入 2 个数,数与数之间以空格间隔,表示 2 块石头的质量。
输出格式
输出表示第 3、4 块石头的质量的所有可能结果,每块石头质量的数字用空格隔 开。多组结果时,按第 3 块石头质量从小到大排序分行输出。
样例输入(测试数据不包含本样例)
1 11 样例输出
8 10
9 9参考答案
def find_stones_weight(m1, m2):
results = [] # 保存所有可能的结果
for m3 in range(m1 + 1, m2):
for m4 in range(m3, m2 + 1):
if m1 + m2 + m3 + m4 == 30:
results.append((m3, m4))
return results
# 输入已有的两块石头的质量
m1, m2 = map(int, input().split())
# 查找可能的新石头质量并输出结果
possible_weights = find_stones_weight(m1, m2)
for weight in possible_weights:
print(weight[0], weight[1])答案解析
使用两层循环来解决捡石头的问题。
外层循环遍历第三块石头的质量,内层循环遍历第四块石头的质量。
我们需要满足以下条件:
新捡的两块石头的质量要介于前两块石头的质量之间。四块石头的质量之和等于30。
上一题
下一题