🌗 746. 使用最小花费爬楼梯

吞佛童子2022年6月9日小于 1 分钟

🌗 746. 使用最小花费爬楼梯

难度: 🌗

问题描述

img_4.png


解法

class Solution {
    public int minCostClimbingStairs(int[] cost) {
        // 思路:
        // dp[i] = min(dp[i - 1] + [i - 1], dp[i - 2] + [i - 2])
        int len = cost.length;
        if(len == 1) {
            return cost[0];
        }
        if(len == 2) {
            return Math.min(cost[0], cost[1]);
        }
        // len > 2
        int[] dp = new int[len + 1];
        for(int i = 2; i <= len; i ++) {
            dp[i] = Math.min(dp[i - 1] + cost[i - 1], dp[i - 2] + cost[i - 2]);
        }
        return dp[len];
    }
}

输出

img_5.png

上次编辑于: 2022/6/20 下午8:24:47
贡献者: liuxianzhishou