문제
https://leetcode.com/problems/min-cost-climbing-stairs/?envType=study-plan-v2&envId=leetcode-75
코드
class Solution {
public int minCostClimbingStairs(int[] cost) {
// i가 2부터인 이유는 제약조건
for(int i = 2; i < cost.length; i++){
// 두칸 아래와 한칸 아래 계단 중 더 값이 작은 계단을 밟으면 된다.
// 그리고 밟은 계단의 비용을 더해준다.
cost[i] = cost[i] + Math.min(cost[i-2], cost[i-1]);
}
// 배열 길이의 + 1 의 위치가 꼭대기라고 하면 꼭대기에서 한칸 아래와 두칸 아래 중 작은 값이 밟은 계단의 비용 최소값
return Math.min(cost[cost.length-1], cost[cost.length-2]);
}
}
'코테 > 알고리즘' 카테고리의 다른 글
[leetcode 75 1456. Maximum Number of Vowels in a Substring of Given Length] - 슬라이딩 윈도우 (0) | 2024.03.22 |
---|---|
[leetcode 75 198.House Robber] - DP, Math.max (1) | 2024.03.22 |
[leetcode 283. Move Zeroes 0으로 이동] - 투포인터 (0) | 2024.02.08 |
[leetcode 872. Leaf-Similar Trees 잎과 유사한 나무] - Tree (1) | 2024.02.08 |
[leetcode 841. Keys and Rooms 열쇠의 방] - DFS (0) | 2024.02.08 |