如果这个问题太简单了,首先抱歉。刚开始学习Python。
所以这是我的代码:
class Solution:
def minCostClimbingStairs(self, cost: List[int]) -> int:
n = len(cost)
m = [0] * n
def dp(self, cost, m, i):
dp1 = dp(cost, m, i - 1) + cost[i - 1]
dp2 = dp(cost, m, i - 2) + cost[i - 2]
return m[i] = min(dp1, dp2)
return dp(cost, m, n)
当我尝试运行它时,它SyntaxError: invalid syntax在代码行中告诉我return m[i] = min(dp1, dp2)
=======> 反馈后修改
class Solution:
def minCostClimbingStairs(self, cost: List[int]) -> int:
m = [0] * (len(cost) + 1)
def dp(cost, m, i):
if i <= 1:
return 0
if m[i] > 0:
return m[i]
dp1 = dp(cost, m, i - 1) + cost[i - 1]
dp2 = dp(cost, m, i - 2) + cost[i - 2]
m[i] = min(dp1, dp2)
return m[i]
return dp(cost, m, len(cost))
慕尼黑的夜晚无繁华
相关分类