
😎풀이
- 가장자리를 제외한
grid 순회
1-1. 현재 위치를 기준으로 3x3 영역 순회
1-2. 가장 큰 숫자 탐색
1-3. 현재 위치의 result 배열에 할당
- 각 위치에서 탐색된 최댓값이 모인 결과 배열 반환
function largestLocal(grid: number[][]): number[][] {
function getNestMaxNum(row: number, col: number) {
let maxNum = -Infinity
for(let y = row - 1; y <= row + 1; y++) {
for(let x = col - 1; x <= col + 1; x++) {
maxNum = Math.max(maxNum, grid[y][x])
}
}
return maxNum
}
const n = grid.length
const result = Array.from({ length: grid.length - 2 }, () => [])
for(let row = 1; row < n - 1; row++) {
for(let col = 1; col < n - 1; col++) {
result[row - 1][col - 1] = getNestMaxNum(row, col)
}
}
return result
};