雞兔同籠(附java程式碼)——窮舉法解題
阿新 • • 發佈:2019-01-03
窮舉法:暴力破解,n層for迴圈。列舉每一種可能。
例題:
雞兔同籠:一個籠子有35個頭,94只腳,問雞和兔各有多少?
解題:數學方法:設雞i只,兔j只,方程:i + j = 35 ; 2 * i + 4 * j = 94。
解題思路:雞和兔加起來35只,所以算每一種可能的腳的個數,符合就輸出就可以了
程式碼如下:
public static void main(String[] args) { jitutonglong(35, 94); } public static void jitutonglong(int head , int foot) { int[] f = new int[100]; f[0] = 1; f[1] = 1; for (int i = 2; i < f.length; i++) { f[i] = f[i-1] + f[i-2]; } for (int i = 0; i < head; i++) { int j = head-i; if (i * 2 + j * 4 == foot) { System.out.println("兔子" + j + "個"); System.out.println("雞" + i + "只"); break; } } }