题解 | #最小花费爬楼梯#

最小花费爬楼梯

https://www.nowcoder.com/practice/6fe0302a058a4e4a834ee44af88435c7

#include <cmath>
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param cost int整型vector 
     * @return int整型
     */
    int minCostClimbingStairs(vector<int>& cost) {
        if (cost.size()<2)
            return 0;
        std::vector<int> dp_fee(cost.size()+1, 0);
        // write code here
        for (int i = 2; i <= cost.size(); i++) {
            dp_fee[i] = min(dp_fee[i-2] + cost[i-2], dp_fee[i-1] + cost[i-1]);
        }
        return dp_fee[cost.size()];
    }   
};

方法:比较简单,从下往上以此找到每个台阶所在位置的最小花费,满足动态规划的特征,最后返回到cost.size()位置的dp_fee大小

#动态规划#
全部评论

相关推荐

11-04 14:10
东南大学 Java
_可乐多加冰_:去市公司包卖卡的
点赞 评论 收藏
分享
昨天 17:22
已编辑
西安交通大学 Java
华为 昇腾 ai软件开发 薪资20k x (14-16),职级13A,5%公积金,c/cpp
BLOOMING7:闭眼滴滴,华子给的又少又累
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务