LeetCode 746 使用最小花费爬楼梯

题目描述链接:https://leetcode-cn.com/problems/min-cost-climbing-stairs/

解题思路:动态规划,自底向上,边界条件:dp[0]=0,dp[1]=cost[0],其动态转移方程为:dp[i]=min(dp[i-1],dp[i-2])+cost[i-1] (由于dp[0]被占用,所以这里dp[i]代表的走到i-1的花费)

LeetCode解题代码如下:

class Solution {
public:
    int dp[1005];
    int minCostClimbingStairs(vector<int>& cost) {
        dp[0]=0;
        dp[1]=cost[0];
        int len=cost.size();
        for(int i=2;i<=len;i++){
            dp[i]=min(dp[i-1],dp[i-2])+cost[i-1];
        }
        return min(dp[len],dp[len-1]);
    }
};
原文地址:https://www.cnblogs.com/zzw-/p/13393716.html