动态规划,从后向前,比较是先走一步比较省力还是走两步比较省力,取最小值,最后比较cost[0]和cost[1],取最小值。
class Solution {
public int minCostClimbingStairs(int[] cost) {
int len = cost.length;
for(int i = len-3; i >= 0; i--){
cost[i] = Math.min(cost[i]+cost[i+1],cost[i]+cost[i+2]);
}
return Math.min(cost[0], cost[1]);
}
}