剑指 Offer II 088. 爬楼梯的最少成本

这道题有点恶心 主要是题意。。 cost = [10, 15, 20]
到顶的意思是出了这个数组。。 所以最低的是从15开始
明白题意之后就简单多了 因为开始可以是第0个或者第1个。所以到达0 和 1的花费是0



func minCostClimbingStairs(_ cost: [Int]) -> Int {

        let length = cost.count
        var valueArray = Array.init(repeating: 0, count: length + 1)
        for i in 0...length {
            
            if i == 0 || i == 1{
                valueArray[i] =  0
            }else {
                valueArray[i] =  min(valueArray[i - 1] + cost[i - 1],  valueArray[i - 2] + cost[i - 2])
            }

        }
        return valueArray[length]
    
    }








你可能感兴趣的:(剑指 Offer II 088. 爬楼梯的最少成本)