题目链接:https://leetcode-cn.com/problems/climbing-stairs/
难度:简单

描述:
假设你正在爬楼梯。需要 n 阶你才能到达楼顶。
每次你可以爬 12 个台阶。你有多少种不同的方法可以爬到楼顶呢?

提示:
n:[1, 45]

题解

思路:
最后一步只能是1个台阶或两个台阶,所以f(n) = f(n - 1) + f(n - 2)

  1. class Solution:
  2. def climbStairs(self, n: int) -> int:
  3. a, b = 1, 1
  4. for i in range(2, n+1):
  5. a, b = b, a + b
  6. return b