乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法(先後次序不同算不同的結果)。
當有0級台階的時候,有0種跳法
當有1級台階的時候,有1種跳法
當有2級台階的時候,有2種跳法
當有3級台階的時候,有3種跳法
當有4級台階的時候,有5種跳法
。。。那麼,從1級台階以後,跳法是不是很像斐波那契數列從第2項開始的數列?
於是可以參照斐波那契數列的方法來做。
;乙隻青蛙一次可以跳上1級台階,也可以跳上2級……它也可以跳上n級。求該青蛙跳上乙個n級的台階總共有多少種跳法。
可以用逆推的思路去想,跳n級台階,可以從n-1級跳上來,也可以從n-2級跳上來,從n-3級跳上來,依次下去,從第1級跳上去,或直接跳上去,所以,跳n級台階的方法數相當於其它所有台階數的方法的總和再加上從0級跳上去,表示式為 f(n) = f(n-1) + f(n-2) +…+ f(2) + f(1) + 1。例如:
當跳1級台階時,f(1) = 1;
當跳2級台階時,f(2) = f(1) + 1 = 2;
當跳3級台階時,f(3) = f(2) + f(1) + 1 = 4;
當跳4級台階時,f(4) = f(3) + f(2) + f(1) + 1 = 8;
f(n) = f(n-1) + f(n-2) +…+ f(2) + f(1) + 1
f(n-1) = f(n-2) +…+ f(2) + f(1) + 1
兩式作差 f(n) - f(n-1) = f(n-1) 推出f(n) = 2 * f(n-1)
青蛙跳台階問題
題目 乙隻青蛙一次可以跳上 1 級台階,也可以跳上2 級。求該青蛙跳上乙個n 級的台階總共有多少種跳法。我的思路 最開始我的思路是把這個看成是乙個數學問題,n i 1 k 2先把所有可能滿足這個公式的i和k求出來。然後在對i和k做排列組合。很明顯i的範圍應該是0 public int jumpflo...
青蛙跳台階問題
1 乙隻青蛙一次可以跳上 1 級台階,也可以跳上2 級。求該青蛙跳上乙個n 級的台階總共有多少種跳法。2 乙隻青蛙一次可以跳上1級台階,也可以跳上2 級 它也可以跳上n 級,此時該青蛙跳上乙個n級的台階總共有多少種跳法?分析 1 當n 1,只有1中跳法 當n 2時,有兩種跳法 當n 3 時,有3種跳...
青蛙跳台階問題
問題一 有乙隻青蛙,需要跳上100級台階。青蛙每次可以調一級或者兩級台階。問青蛙有多少種方式可以跳100級台階。思路 逆推 當青蛙站在100級台階上時,那它跳上100級時有可能是從99級跳一級上來的,也可能是從98級跳兩級跳上來的 從98級跳兩個一級包括在從99級跳一級情況內,所以不予考慮 所以f ...