카테고리 없음

[못품/릿코드/javascript] 746. Min Cost Climbing Stairs

_서리__ 2023. 3. 29. 19:13

처음에는 cost[0],cost[1]중에 더 작은 값으로 시작해서 cost[i+1] cost[i+2] 중 작은 값을 더해나가면서 풀었는데

이런식으로 하면 답이 정확하게 나오질 않는다.

그래서 다른 사람의 풀이를 참고하였다.

이건 뒤에서부터 더해준건데, 이렇게 해서 cost배열의 0~cost.length-1까지 최소 cost를 구한것이다.(DP!)

var minCostClimbingStairs = function(cost) {
//뒤에서부터 비용을 더해준다.
    for (let idx = cost.length - 3; idx>=0; idx--)
        cost[idx] += Math.min(cost[idx + 1], cost[idx + 2])
        //1step이나 2step중 작은 값을 더해줌.
    return Math.min(cost[0], cost[1])
    //0이나 1중 더 적게 드는 걸로 시작함.!
};