작성
·
198
1
안녕하세요 잘보고 있습니다!
제 풀이는 아래와 같은데 혹시 문제될만한점이 있을까요??
function solution(arr) {
let answer = 0;
let n = arr.length;
let u = r = d = l = c = 0;
for (let i = 0; i < n; i++) {
for (let j = 0; j < n; j++) {
c = arr[i][j]; //현재위치
u = (i - 1 < 0) ? 0 : arr[i - 1][j]; //위
r = (j + 1 >= n) ? 0 : arr[i][j + 1]; //오른쪽
d = (i + 1 >= n) ? 0 : arr[i + 1][j]; //아래
l = (j - 1 < 0) ? 0 : arr[i][j - 1]; //왼쪽
if (c > u && c > r && c > d && c > l) answer++;
}
}
return answer;
}
const arr = [
[5, 3, 7, 2, 3],
[3, 7, 1, 6, 1],
[7, 2, 5, 3, 4],
[4, 3, 6, 4, 1],
[8, 7, 3, 5, 2]
];
console.log(solution(arr));
답변 1
0
안녕하세요^^
잘 하신 코드입니다.
영상에서 알려드린 dx, dy 초기화해서 하는 방법도 꼭 알아두세요. 나중에 많이 사용합니다. 특히 상하좌우, 대각선까지 8방향을 탐색하는 경우 코드가 간결해지는 효과가 있습니다.
넵 강의보고 숙지했습니다 감사합니다!