zoukankan      html  css  js  c++  java
  • 746. 使用最小花费爬楼梯

    /**
    1.dp[i]表示到达第i步楼梯的最小花费,即最优解
    2.要到达第i步楼梯,必然是通过爬一个阶梯或者爬两个阶梯实现的
        爬一个阶梯的情况:dp[i-2]
        爬两个阶梯的情况:dp[i-1]
    3.选择是爬一个阶梯,还是爬两个阶梯的花费最少。即 min(dp[i-2],dp[i-1])
    4.经过第三步后已经是最优的状态,最后爬上当前楼梯,即 min(dp[i-2],dp[i-1]) + cost[i]
     * @param {number[]} cost
     * @return {number}
     */
    var minCostClimbingStairs = function(cost) {
        const min=(a,b)=>a>b?b:a;
        cost.push(0);
        var dp1=cost[0];
        var dp2=cost[1];
        var dp=0;
        for(var i=2;i<cost.length;i++){
            dp=min(dp1,dp2)+cost[i];
            dp1=dp2;
            dp2=dp;
            
            
        }
        return dp;
    };
  • 相关阅读:
    匿名对象
    封装性
    1 Django初探
    8 定制10MINs 3
    7 定制10MINs首页2
    5-1 练习css 总结
    6.定制10MINS首页1
    3-1 练习 HTML 总结
    5. css定位 居中
    4 CSS的20/80个知识点
  • 原文地址:https://www.cnblogs.com/remly/p/10613280.html
Copyright © 2011-2022 走看看