用一百匹馬馱一百擔貨,一匹大馬能馱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匹。