문제 번호
알고리즘 분류
문제 풀이
우선 주어진 모든 움직임을 파악하기위해서 moves.length 만큼 for문을 사용하였다.
이후 moves 에서 주어진 열을 탐색하면서 인형이 발견되면 해당 인형을 집어서 result 라는 배열에 넣는다.
이때 result 의 최상단이 현재 집은 인형과 같은 인형이라면 result 배열을 pop 시켜주고 answer 변수에 제거한 인형의 수를 추가한다.
전체코드
function solution(board, moves) {
var answer = 0;
let result = [];
// 모든 움직임 검색하기.
for(let i=0; i<moves.length; i++){
let col = moves[i]-1;
for(let j=0; j<board.length; j++){
// 인형을 발견하면 집는다.
if(board[j][col] !== 0){
if(result[(result.length)-1] === board[j][col]){
result.pop();
answer += 2;
}
else{
result.push(board[j][col]);
}
board[j][col] = 0;
break;
}
}
}
return answer;
}
특이사항
'Algorithm > Programmers' 카테고리의 다른 글
[JS][프로그래머스LV2]올바른 괄호 (0) | 2021.09.03 |
---|---|
[JS][프로그래머스LV1]신규 아이디 추천 (0) | 2021.09.03 |
[JS][프로그래머스]숫자 문자열과 영단어 (0) | 2021.08.31 |
[JS][프로그래머스]키패드 누르기 (0) | 2021.08.31 |
[JS][프로그래머스]폰켓몬 (0) | 2021.08.30 |