力扣c語言實現 70 爬樓梯

2021-10-03 03:16:24 字數 711 閱讀 6282

假設你正在爬樓梯。需要 n 階你才能到達樓頂。

每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢?

注意:給定 n 是乙個正整數。

示例 1:

輸入: 2

輸出: 2

解釋: 有兩種方法可以爬到樓頂。

1 階 + 1 階

2 階

示例 2:

輸入: 3

輸出: 3

解釋: 有三種方法可以爬到樓頂。

1 階 + 1 階 + 1 階

1 階 + 2 階

2 階 + 1 階

int

climbstairs

(int n)

; dp[1]

=1; dp[2]

=2;for

(int i =

3; i <= n;i++

)return dp[n]

;}

動態規劃其實是種很簡單的數學思想,即,到目前為止的結果等於:當前的狀態a,與a之前的狀態疊加得到。

簡單表示為:final = cur + past.

這是種中學時經常用的數學解題方法,這類題目的關鍵是,一定要得到最開始的兩種狀態的結果值,從而不斷地推出下一種狀態的結果。就像題目中,題目告知了我們dp[1],dp[2],以及dp[i] = dp[i-1] + dp[i-2],由此,乙個for迴圈就能解決問題。

力扣 70 爬樓梯

問題描述 假設你正在爬樓梯。需要 n 階你才能到達樓頂。每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢?注意 給定 n 是乙個正整數。示例 1 輸入 2輸出 2解釋 有兩種方法可以爬到樓頂。1.1 階 1 階 2.2 階示例 2 輸入 3輸出 3解釋 有三種方法可以爬到樓頂。1...

力扣 70 爬樓梯

題目描述 簡單 假設你正在爬樓梯。需要 n 階你才能到達樓頂。每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢?注意 給定 n 是乙個正整數。題目鏈結 示例 1 輸入 2輸出 2解釋 有兩種方法可以爬到樓頂。1.1 階 1 階 2.2 階 示例 2 輸入 3輸出 3解釋 有三種方...

力扣70 爬樓梯

假設你正在爬樓梯。需要 n 階你才能到達樓頂。每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢?注意 給定 n 是乙個正整數。示例 1 輸入 2 輸出 2 解釋 有兩種方法可以爬到樓頂。1 1 階 1 階 2 2 階 示例 2 輸入 3 輸出 3 解釋 有三種方法可以爬到樓頂。1...