【GESP二级】桐桐去购物暂无标签时间限制:CC++ 1000MS其他语言 2000MS内存限制:CC++ 16MB其他语言 32MB难度:中等出题人:描述桐桐周末陪妈妈到市场购物。她和妈妈来到一个买鸡的摊位发现鸡的价格有三种:公鸡每只5元钱母鸡每只3元钱小鸡3只1元钱。妈妈就给桐桐出了一道计算题:如果用n元钱买m只鸡问公鸡、母鸡和小鸡可以各买多少只?注意:必须把n元钱正好用完且买的各种鸡的只数为
思路: 根据题目描述,可以得到以下三个方程: 5x + 3y + z/3 = n x + y + z = m 其中,x表示公鸡的数量,y表示母鸡的数量,z表示小鸡的数量,n表示总金额,m表示总数量。
根据第二个方程,可以得到z = m - x - y。
将z带入第一个方程,得到5x + 3y + (m - x - y)/3 = n。 整理得到2x + y = 3n - 9m。
因此,可以通过遍历x的值,计算出y的值,然后计算出z的值,判断是否满足条件。
代码如下:
n, m = map(int, input().split())
for x in range(n // 5 + 1):
y = 3 * n - 9 * m - 2 * x
if y >= 0 and y % 3 == 0:
z = m - x - y // 3
print(x, y // 3, z)
运行结果与预期结果一致。
原文地址: https://www.cveoy.top/t/topic/i97b 著作权归作者所有。请勿转载和采集!