class Solution: def minCostClimbingStairs(self, cost: List[int]) -> int: n = len(cost) dp = [0]*n dp[0] = cost[0] dp[1] = cost[1] for i in range(2, n): dp[i] = min(dp[i-1], dp[i-2]) + cost[i] # 特殊状态更新的斐波那楔数列 return min(dp[-1], dp[-2])