
안녕하세요.
오늘은 오랜만에 정답률 50%문제 안전지대를 풀어보겠습니다.
function solution(board) {
let answer = 0;
for(let j = 0; j < board.length ; j++){
board[j].map((x,i) => {
if(x === 1){
if(i>0){
board[j][i-1] === 1? board[j][i-1] = 1: board[j][i-1] = 2;
if(j>0){
board[j-1][i-1] === 1? board[j-1][i-1] = 1: board[j-1][i-1] = 2;
}
if(j< board.length-1){
board[j+1][i-1] === 1? board[j+1][i-1] = 1: board[j+1][i-1] = 2;
}
}
if(i< board.length-1){
board[j][i+1] === 1? board[j][i+1] = 1: board[j][i+1] = 2;
if(j< board.length-1){
board[j+1][i+1] === 1? board[j+1][i+1] = 1: board[j+1][i+1] = 2;
}
if(j>0){
board[j-1][i+1] === 1? board[j-1][i+1] = 1: board[j-1][i+1] = 2;
}
}
if(j>0){
board[j-1][i] === 1? board[j-1][i] = 1: board[j-1][i] = 2;
}
if(j< board.length-1){
board[j+1][i] === 1? board[j+1][i] = 1: board[j+1][i] = 2;
}
}
})
}
board.map(x => x.map(y=>y === 0? answer++ : answer))
return answer
}
제가 문제를 푼 방법은 1주변의 공간을 2로 모두 변경해준뒤 남은 0의 숫자를 전부 세는 방법이었습니다.
'코테 준비 > [JS] 프로그래머스' 카테고리의 다른 글
프로그래머스 0단계: 정답률 44% - 평행 (0) | 2024.08.05 |
---|---|
프로그래머스 0단계: 정답률 48% - 겹치는 선분의 길이 (0) | 2024.08.05 |
프로그래머스 0단계: 정답률 53% - 분수의 덧셈 (0) | 2024.08.05 |
프로그래머스 0단계: 정답률 57% - 다음에 올 숫자 (0) | 2024.08.05 |
프로그래머스 0단계: 정답률 58% - OX퀴즈 (0) | 2024.08.05 |