2021.12.11 互測
阿新 • • 發佈:2021-12-11
陣列的每個下標作為一個階梯,第 i 個階梯對應著一個非負數的體力花費值cost[i](下標從 0 開始)。
每當你爬上一個階梯你都要花費對應的體力值,一旦支付了相應的體力值,你就可以選擇向上爬一個階梯或者爬兩個階梯。
請你找出達到樓層頂部的最低花費。在開始時,你可以選擇從下標為 0 或 1 的元素作為初始階梯。
來源:力扣(LeetCode)
連結:https://leetcode-cn.com/problems/min-cost-climbing-stairs
著作權歸領釦網路所有。商業轉載請聯絡官方授權,非商業轉載請註明出處。
心之所向,素履以往 生如逆旅,一葦以航class Solution { public int minCostClimbingStairs(int[] cost) { if (cost == null || cost.length == 0) { return 0; } int dp1 = 0, dp2 = 0; for (int c : cost) { int dp = Math.min(dp1, dp2) + c; dp2 = dp1; dp1 = dp; } return Math.min(dp1, dp2); } }