1️⃣ 문제
2️⃣ 문제 해결 전략
3️⃣ 코드 및 설명
내 코드
function solution(N, M, board) { var deque=[] for (let j=0;j<M;j++ ) { if (board[N-1][j]===2) { deque.push([N-1,j]) break } } var dy = [-1,0,1] var visited = new Set([N-1,j]) var answer = 0; while (deque.length) { var len = deque.length for (var cnt=0;cnt<len;cnt++) { var [i,j] = deque.shift() for (let k=0;k<3;k++) { var [curx,cury] = [i-1,j+dy[k]] if (board[i][cury]===1) { continue } if (cury>=0 && cury<M && curx>=0 && board[curx][cury]===0 && !visited.has([curx,cury])) { deque.push([curx,cury]) visited.add([curx,cury]) } } } if (deque.length) { answer++; } } return answer; }