「百錢買百雞」是我國著名的古代數學問題,中國古代數學家張丘建在他的《算經》中提出了這樣乙個問題:雞翁一,值錢五,雞母一,值錢三,雞雛三,值錢一,百錢買百雞,問翁、母、雛各幾何?
你的任務是求解下面這個問題。問題是這樣描述的:a文錢可買乙隻公雞,b文錢可買乙隻母雞,c文錢可買d只小雞。用m文錢買n隻雞,那麼有公雞x只、母雞y只、小雞z只。求解出符合題意的x,y,z。
輸入輸入為一張表。第一行是乙個固定不變的表頭,格式見sample。後面有多行,每行為一組測試資料。每組測試資料由6個整數組成,分別為「a,b,c/d,m,n」。滿足0每組測試資料的執行結果輸出為一張表,表頭固定為「cocks,hens,chicks」。每組測試資料的乙個可行解數出為一行,為三個整數:「x,y,z」。多組解按照公雞數從少到多的順序輸出。若測試資料無解則輸出「cannot buy!」。兩組測試資料之間用乙個空行分隔開。
cock,hen,chick,money,chicks
3,2,1/3,100,100
5,3,1/3,100,100
8,5,1/7,100,100
8,5,1/7,300,300
cocks,hens,chicks
0,40,60
5,32,63
10,24,66
15,16,69
20,8,72
25,0,75
cocks,hens,chicks
0,25,75
4,18,78
8,11,81
12,4,84
cannot buy!
cocks,hens,chicks
8,40,252
本題重點在於了解多重迴圈的執行效率問題,減少一層迴圈可以降低很大規模的運算量。通過在迴圈體內加計數器可以統計出迴圈的執行次數,當測試資料變大時,執行次數的增長會非常可觀,這就是超時的原因了。
#include int main()
}if(i==0)
printf("cannot buy!\n");
printf("\n");
}return 0;
}
百錢買百雞問題
算經中有這麼一道題,題目很簡單 公雞5文錢乙隻,母雞3文錢乙隻,小雞3只一文錢,用100文錢買一百隻雞,其中公雞,母雞,小雞都必須要有,問公雞,母雞,小雞要買多少只剛好湊足100文錢?從數學的角度看這是一道很基礎的三元一次方程,現在我們用程式來解決這個問題,最容易想的的方法就是使用列舉法,把每一種可...
百錢買百雞問題
題目 西元前五世紀,我國古代數學家張丘建在 算經 一書中提出了 百雞問題 雞翁一值錢五,雞母一值錢三,雞雛三值錢一。百錢買百雞,問雞翁 雞母 雞雛各幾何?題解 設能買雞翁,雞母,雞雛各x,y,z只,根據題意可得 x y z 100 5x 3y z 3 100 化簡可得 x y z 100 15x 9...
百錢買百雞問題
百錢買百雞,100塊要買100隻雞,公雞5塊 母雞3塊 小雞1塊3個,100塊花完 買了100個雞 求有幾種買法,分別買了多少只 公雞母雞小雞 方法一 package com.summer 0416.cn author summer 百錢買百雞,100塊要買100隻雞,公雞5塊 母雞3塊 小雞1塊3...