タイトル説明
カエルは、クラス1レベルにジャンプすることができ、あなたはまた、レベル2に飛び乗っすることができます。カエルはどのように多くのジャンプ(別の計算異なる結果の順序)は、n級レベルの合計を求めて飛び込みました。
分析
我々は、Y番号付けし、ステップ番号の関数としてジャンプN、すなわち、Y = F(N)。まず、第一段階からn = 1の場合、一つだけジャンプ方法、即ち、F(1)= 1。二つのステップがある場合、2つのジャンプ、二つの第一次、二次のジャンプ又は直接ジャンプ、二つの方法の合計、即ち、F(N)= 2です。
N> 2、ステップの面でnに、各ステップだけのジャンプまたは1つは、二階から選択すると、どんな種類の、唯一の選択肢ではありません。したがって、ジャンプため、場合ジャンプおよびF(n-1)の方法をジャンプ同じ数、時ジャンプ二次、同じ数及びジャンプのF(N-2)の数。から
Nホップの溶液を満たす工程としてF(N)= F(1-N)+ F(N-2) 。
この式のために、あなたは非常に精通していない場合。はい、これはフィボナッチフィボナッチ数列を計算するための式は、フィボナッチレベルの問題は、初期条件のわずかな変化をフィボナッチ数配列の変異体であり、ジャンプ、通常、フィボナッチ数列を達成するためのサイクルをお勧めします。
問題は、C ++で以下の通りであります:
{ソリューションクラス パブリック: INT jumpFloor(INT番号){ 番号問題の//フィボナッチ拡張 IF(数<= 0){ //入力不正検出 戻り0; }そうIF(数<= 2){ //最初のステップ二つ のリターン番号; } int型pre_2 =、= APRE-2、CURR = 0 1、。 ため(intはI = 3;私は<=数は、I ++){ //フィボナッチ数を使用してサイクルが解決 Apre- + = pre_2 CURR; pre_2 = Apre-; APRE-CURR =; } CURRを返します; } }。
ブラシタイトル、順番だけでなく、自分の後悔に!------ haozi