题解 | #最小花费爬楼梯#
最小花费爬楼梯
https://www.nowcoder.com/practice/6fe0302a058a4e4a834ee44af88435c7
动态规划解题
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param cost int整型一维数组 * @return int整型 */ public int minCostClimbingStairs (int[] cost) { // write code here int len = cost.length; if(len == 0) return 0; if(len == 1) return cost[0]; int[] dp = new int[len+1]; //dp数组存储的是到达i下标所需花费的最少费用 dp[0] = cost[0]; dp[1] = cost[1]; for(int i=2; i<len; i++) { dp[i] = Math.min(dp[i-1],dp[i-2]) + cost[i]; } dp[len] = Math.min(dp[len-1],dp[len-2]); return dp[len]; } }