百元買雞基礎算法題

問題描述

已知 公雞5元一隻、母雞3元一隻、小雞一元3只
假設現有100元要剛剛好買100只雞,公雞、母雞、小雞各多少隻

推論

從數學求解
設公雞、母雞、小雞爲 x、y、z
以及 x+y+z = 100;
5x+3y+z/3 = 100;
兩個條件是解不了 這個三元方程的
只能用程序來解 枚舉
由於沒有小數 所以公雞最大爲 100-3-1/5 去餘數爲 19
母雞最大 爲 100-5-1/3 爲32
小雞 1元三隻 不存在小數 所以 多少都合適

php:

`
<?php
function main() {
    for($x=1; $x < 20; $x++) {
        for($y=1; $y < 33; $y++) {
            $z = 100-x-y;
            $sum = $x*5+$y*3+z/3;
            if($sum == 100){
                //如果是100  則方程有解
                echo "公雞:$x\n母雞:$y\n小雞:$z\n";
            }
        }
    }
}
main();
?>
`

python

def main():
for x in range(1,19):
    for y in range(1,32):
        z = 100 - x - y
        num = x * 5 + y * 3 + z/3
        if(num == 100):
            print("公雞:%d\n母雞:%d\n小雞:%d\n"%(x,y,z))

main()

結果

公雞:4
母雞:18
小雞:78

公雞:8
母雞:11
小雞:81

公雞:12
母雞:4
小雞:84

總結

面對多元問題的在已知條件不能解決的情況下的解題思路

翻譯

http://www.cnblogs.com/huangxincheng/archive/2012/08/05/2624156.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章