爬樓梯 遞迴

2021-08-19 14:08:07 字數 623 閱讀 7734

題目要求:乙個人爬樓梯,每次可以走一級或者兩級,輸入樓梯級數,求不同的走法數。

輸入輸出格式:輸入包含若干行,每行包含乙個正整數n(n<=30)代表樓梯級數,輸出對應的走法數,每個一行。

樣例輸入:58

10樣例輸出:834

89分析:用遞迴將問題分解為規模更小的子問題進行求解。

n級台階的走法數=第一步走1級後,剩下的n-1級台階的走法數+第一步走2級後,剩下的n-2級台階的走法數。

即f(n)=f(n+1)+f(n+2)

邊界條件:n=1時,為1    n=2時,為2(注意不能只寫n=1時,為1,因為f(2)=f(1)+f(0),我們不知道f(0).因此f(2)是不能用遞迴來求的,而是應該作為邊界條件,直接return它的值。當然邊界條件

也可以寫為:n=0時,為1    n=1時,為1,即只有f(1)的值是直接return的,其他都是遞迴得到的)

#includeusing namespace std;

int stair(int n)

int main()

return 0;

}

爬樓梯(遞迴)

4017 爬樓梯描述 樹老師爬樓梯,他可以每次走1級或者2級,輸入樓梯的級數,求不同的走法數。例如 樓梯一共有3級,他可以每次都走一級,或者第一次走一級,第二次走兩級也可以第一次走兩級,第二次走一級,一共3種方法。輸入輸入包含若干行,每行包含乙個正整數n,代表樓梯級數,1 n 30 輸出不同的走法數...

遞迴 爬樓梯

加粗樣式 問題 樹老師爬樓梯,他可以每次走1級或者2級,輸入樓梯的級數,求不同的走法數 例如 樓梯一共有3級,他可以每次都走一級,或者第一次走一 級,第二次走兩級,也可以第一次走兩級,第二次走一級,一 共3種方法。輸入 輸入包含若干行,每行包含乙個正整數n,代表樓梯級數,1 n 30輸出不同的走法數...

python爬樓梯遞迴 爬樓梯(Python3)

假設你正在爬樓梯。需要 n 階你才能到達樓頂。每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢?注意 給定 n 是乙個正整數。示例 1 輸入 2 輸出 2 解釋 有兩種方法可以爬到樓頂。1 階 1 階 和 2 階 解題思路 實現了兩種方法,但是第一種超出時間限制 因為遞迴的時候方...