鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一。
×钱买Y鸡,问鸡翁、鸡母、鸡雏各几何?
输入X和Y的值,输出所有买法的总数。若无答案,输出“no solution”。
flag = 0
for jw in range( 1,20):
for jm in range (1, 33):
jc=0
jc =100-jw-jm
if jw*5 +jm*3 + jc*(1/3)==100 & jw+jm+jc==100:
#print("鸡翁、鸡母、鸡雏分别可以买:" ,jw,jm,jc)
flag += 1
if flag == 0:
print("no solution")
else:
print(flag)
3
def buy_chickens(X, Y):
count = 0
for x in range(X // 5 + 1):
for y in range(X // 3 + 1):
for z in range(X * 3 + 1):
if x + y + z == Y and x * 5 + y * 3 + z // 3 == X and z % 3 == 0:
count += 1
if count == 0:
return "no solution"
else:
return count
这个函数接收两个参数X和Y,分别表示总价和购买的鸡的数量。它使用三重循环来枚举所有可能的鸡翁、鸡母和鸡雏的数量组合,并检查是否满足题目中给出的条件。如果找到了符合条件的组合,则计数器加一。最后,如果没有找到任何一种符合条件的组合,则返回“no solution”,否则返回计数器的值,即总共的购买方案数。
不知道你这个问题是否已经解决, 如果还没有解决的话:三角形面积最小,也就是 x轴截距和y轴的截距乘积最小
x y=
算算导数:
这时看回到函数
x = symbols('x')
y = 0.5*(x - 8) +4
DrawXY(0,15,100,y,'blue','y = 0.5*(x - 8) +4',plt)
y = -0.5*(x - 8) +4
DrawXY(0,15,100,y,'green','y = -0.5*(x - 8) +4',plt)
plt.legend(loc='lower right')
plt.show()
从这里看出应该选择 m=-1/2, 而围包坐标轴的直线公式则是