题目描述
假设你正在爬楼梯。需要 n 阶你才能到达楼顶。
每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?
示例
示例 1:
1 | 输入:n = 2 |
示例 2:
1 | 输入:n = 3 |
提示
1 <= n <= 45
解题思路
由于一次只能爬 1 或 2 个台阶,所以爬到第 n 阶的方法数为爬到第 n-1 阶的方法数加上爬到第 n-2 阶的方法数。
$$
dp[n] = dp[n-1] + dp[n-2]
$$
初始条件为:
$$
dp[0] = 1, dp[1] = 1
$$
代码实现
1 | class Solution: |