百鸡百钱
鸡翁一:值钱五,鸡母一:值钱三,鸡雏三:值钱一,百钱买百鸡,问翁,母,雏各几何?
一、解析
解析:令翁=x,母=y,雏=z(且z必为3的倍数),
则:5x+3y+z/3 = 100(钱)
x+y+z = 100(只)
二、代码实现
基于python3.8的Spyder:
# -*- coding: utf-8 -*-
"""
Created on Tue Nov 9 09:48:57 2021
@author: lenovo
蛮力法:百鸡百钱问题
鸡翁一:值钱五,鸡母一:值钱三,鸡雏三:值钱一,百钱买百鸡,问翁,母,雏各几何?
解析:令翁=x,母=y,雏=z(且z必为3的倍数),
则:5x+3y+z/3 = 100(钱)
x+y+z = 100(只)
"""
def hundredChicken_and_hundredMoney():
print("欢迎来到百鸡百钱问题")
#翁。母,雏,的价格
x,y,z = 5,3,3
flag = 0
#外层循环最多有100//5只翁
for i in range(100//5):
#最多有100//3只母
for j in range(100//3):
#雏的最高价格,最多有k//z只雏,
for k in range(100*3):
if (i+j+k == 100 and i*x+j*y+k//z == 100 and k%z == 0):
print("翁:"+str(i)+"只, "+"母:"+str(j)+"只, "+"雏:"+str(k)+"只")
flag = 1
if(flag == 0):
print("没有解决方案!")
hundredChicken_and_hundredMoney()
三,打印结果
下一篇
蛮力法之顺序查找