一,题目:
现有一堆稿件,
甲单独打字完成需要6小时,
乙单独打字完成需要10小时,
甲工作了若干小时后因家中有事由乙接着干,
两人完成稿件一共用了7小时,问甲打字用了几个小时?
二,解析:
1,为了方便计算,
我们假设这堆稿件分成60份,可以得到:
甲每小时打10份,
乙每小时打6份,
设甲用时x,取值范围:[0,6]
则可以得到乙用时: y = 7- x
若满足下面条件时,
则可以得到问题的解:
10*x + 6*y = 60
有范围,有条件,循环就可以了
实际开发中,为防止有小数,我们把时间均乘以10
说明:数字60取的是甲乙两人的速度的公倍数,也可以是30/60/120/600等
2,工作量示意图:
说明:刘宏缔的架构森林—专注it技术的博客,
网址:https://imgtouch.com
本文: https://blog.imgtouch.com/index.php/2024/04/01/python-suan-fa-gao-jian-wen-ti/
代码: https://github.com/liuhongdi/ 或 https://gitee.com/liuhongdi
说明:作者:刘宏缔 邮箱: [email protected]
三,代码:
1 2 3 4 5 6 |
# 为防止有小数,时间均乘以10
for x in range ( 0 , 60 + 1 ): # 甲用的时间:[0,6]
y = 70 - x # 乙用的时间
if 1 * x + 0.6 * y = = 60 : # 总量为60
print (f '甲用时:{x/10},乙用时:{y/10}' )
break
|
运行结果:
甲用时:4.5,乙用时:2.5