[Leetcode] 1526. Minimum Number of Increments on Subarrays to Form a Target Array

RexiaN·2025년 10월 30일

난이도는 Hard 라고 나왔지만 이전에 비슷한 문제를 풀어봐서 금방 풀었다. 평면에서 출발해 무조건 양수의 개수가 쌓여있는 블럭을 걸어올라가므로 이전 높이에서의 증분만 계산해주면 된다. 블럭을 내려올 때에는 무조건 이전에 쌓은 블럭을 밟고 내려오므로 셀 필요가 없다. 블럭들이 쌓여있고 물을 채우는 것과 비슷한 문제.

function minNumberOperations(nums: number[]): number {
    if (nums.length === 1) {
        return nums[0]
    }
    
    let answer = nums[0];

    for (let i = 1; i < nums.length; i++) {
        if (nums[i] > nums[i - 1]) {
            answer += (nums[i] - nums[i - 1])
        }
    }

    return answer
};

profile
Don't forget Rule No.1

0개의 댓글