문제
답안
function solution(board, moves) {
var answer = 0;
// 뽑은 인형을 담을 배열 stack을 만든다.
let stack = [];
// 빈 배열이 아니면 제일 먼저 있는 값을 스택에 넣고, splice로 그 값을 없앤다.
for(let i = 0; i < moves.length; i++){
for(let j = 0; j < board.length; j++){
if(board[j][moves[i]-1] != 0){
stack.push(board[j][moves[i]-1]);
board[j].splice(moves[i]-1,1,0);
break;
}
}
}
// 스택에서 i번째 값과 i+1 값이 같으면 answer에 1을 더해주고, 그 값을 없앤다.
// 없앤 후 i를 다시 돌린다.
for(let i = 0; i < stack.length; i++){
if(stack[i] == stack[i+1]){
stack.splice(i,2);
answer += 2;
i=-1;
}
}
return answer;
}
후기
마지막 코드에서 i값을 0으로 만들어서 히든 테스트케이스를 통과하지 못했다.
for문이 돌아가면서 i는 1 증가하기 때문에, i를 -1로 설정해줬다.
for문 말고 다른걸로 푸는 연습...... keep going......
728x90
'자바스크립트 코딩테스트' 카테고리의 다른 글
프로그래머스 Level 1 - 햄버거 만들기 (Javascript) (3) | 2023.11.23 |
---|---|
프로그래머스 Level 1 - 바탕화면 정리 (Javascript) (2) | 2023.11.22 |
프로그래머스 Level 1 - 둘만의 암호 (Javascript) (2) | 2023.11.20 |
프로그래머스 Level 1 - 신고 결과 받기 (Javascript) (0) | 2023.11.19 |
프로그래머스 Level 1 - 대충 만든 자판 (Javascript) (0) | 2023.11.18 |