n
: cost
의 길이dp
: dp 배열 생성n
만큼 순회cost
와 합하여 저장function minCostClimbingStairs(cost: number[]): number {
const n = cost.length
const dp = Array(n).fill(Infinity)
dp[0] = cost[0]
dp[1] = cost[1]
for(let i = 2; i < cost.length; i++) {
dp[i] = cost[i] + Math.min(dp[i - 2], dp[i - 1])
}
return Math.min(dp[n - 2], dp[n - 1])
};