Python_經典題_百馬百擔問題


用一百匹馬馱一百擔貨,一匹大馬能馱3擔貨,一匹中馬能馱2擔貨,兩匹小馬能馱1擔貨,問大、中、小馬各幾匹?

 分析:

    1. 一百匹馬:大馬 + 中馬 + 小馬 = 100

       一百擔貨:3*大馬 + 2*中馬 + 小馬/2 = 100

    2. 馬匹數量的范圍

       0 <= 大馬 <= 100//3(整除)

       0 <= 中馬 < 50

       小馬 --> 100 - 大馬 - 中馬

代碼:

 1 # a=>大馬  b=>中馬  c=>小馬
 2 
 3 for a in range(1,100//3 + 1):
 5     for b in range(1,100//2):
 7         c = 100 - (a + b)
 9         # 判斷:總共⼀百匹⻢並且⼀百擔貨
11         if a + b + c ==100 and 3*a + 2*b + c/2 == 100:
12             print(f'大馬{a}匹,中馬{b}匹,小馬{c}匹。')

輸出:

大馬2匹,中馬30匹,小馬68匹。
大馬5匹,中馬25匹,小馬70匹.
大馬8匹,中馬20匹,小馬72匹。
大馬11匹,中馬15匹,小馬74匹。
大馬14匹,中馬10匹,小馬76匹。
大馬17匹,中馬5匹,小馬78匹。
大馬20匹,中馬0匹,小馬80匹。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM