class Solution:
def minCostClimbingStairs(self, cost):
dp = [0*v for v in range(0,len(cost)+1)]
for i in range(2,len(dp)):
num1 = dp[i-2]+cost[i-2]
num2 = dp[i-1]+cost[i-1]
if(num1 < num2):
dp[i] = num1
else:
dp[i] = num2
return dp[len(dp)-1]
解题思路:动态规划的问题,某一级台阶的最小体力消耗,要么来自于前一级阶梯,要么来自于前两级阶梯,(前面的阶梯类似)所以建一个数组来记录这些内容即可。
关于leetcode的又又一道小题
最新推荐文章于 2023-02-08 21:36:03 发布