[LeetCode] 3402. Minimum Operations to Make Columns Strictly Increasing

Chobby·2일 전

LeetCode

목록 보기
904/907

😎풀이

  1. grid 2차원 순회
    1-1. 각 컬럼 요소는 이전 행 동일 컬럼 요소를 항상 초과 하도록 변경
    1-2. 변경에 필요한 연산의 수를 누적하고, 그에 따른 변경 반영
  2. 모든 요소를 엄격히 오름차 순으로 설정하기에 필요한 연산의 수 반환
function minimumOperations(grid: number[][]): number {
    let operation = 0
    for(let col = 0; col < grid[0].length; col++) {
        for(let row = 1; row < grid.length; row++) {
            if(grid[row][col] > grid[row - 1][col]) continue
            const gap = grid[row - 1][col] - grid[row][col] + 1
            operation += gap
            grid[row][col] += gap
        }
    }
    return operation
};
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글