작성
·
164
0
강사님, 안녕하세요?
강사님 코드를 보면서 코드를 짜봤는데 출력이 2가 나옵니다.. ㅜㅜ
아무리 봐도 어디에 문제가 있는지 모르겠는데 어디에 문제가 있을까요..? ㅜㅜ
답변 2
0
강사님 말씀하신대로 break를 else 밖으로 빼주니까 정답이 나왔어요! 감사합니다 ^^
function solution(board, moves) {
const stack = [];
let cnt = 0;
moves.forEach((pos) => {
for (let i = 0; i < board.length; i++) {
if (board[i][pos - 1] !== 0) {
let target = board[i][pos - 1];
board[i][pos - 1] = 0;
if (target === stack[stack.length - 1]) {
stack.pop();
cnt += 2;
} else {
stack.push(target);
}
break;
}
}
});
return cnt;
}
0
안녕하세요^^
지금 짜신 풀 코드를 제가 디버그 해볼 수 있도록 {;}를 이용해서 텍스트 형태로 올려주세요.
코드를 봐서는 break 위치가 잘 못 된것 같은데요. else 안이 아니라 board의 값이 0이 아닌걸 만나면 스택에 처리하고 무조건 break해야 합니다. break를 else 밖으로 빼보세요.