变态跳台阶

变态跳台阶_第1张图片
image.png

思路与之前的类似,只不过不仅仅依赖f(n-1)和f(n-2),而是依赖于之前的所有的值,可以用自下而上的动态规划算法,每一次求新的时,之前所需的所有值都已经求出。

# -*- coding:utf-8 -*-
class Solution:
    def jumpFloorII(self, number):
        # write code here
        dp = [0] * (number+1)
        for i in range(1,number+1):
            for j in range(1,i):
                dp[i] += dp[j]
            dp[i] += 1
        return dp[-1]

你可能感兴趣的:(变态跳台阶)