解题思路:

  1. 可以递归解决,但是递归随便深度就超过了
  2. 用dp做这件事,状态转移方程找好
  3. 记忆化递归也可以考虑 手动人为的剪枝
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 
# @param number int整型 
# @return int整型
#
class Solution:
    def jumpFloor(self , number: int) -> int:
        # write code here
        if number < 3:
            return number
        lst = [0 for i in range(number+1)]
        print(lst)
        lst[0] = 1
        lst[1] = 1
        lst[2] = 2
        for i in range(2, number+1):
            lst[i] = lst[i-1] + lst[i-2]
        print(lst)
        return lst[number]