[프로그래머스 | JS ] 크레인 인형 뽑기 게임

Urther·2022년 6월 16일
0

알고리즘

목록 보기
37/41
post-thumbnail

크레인 인형 뽑기 게임

🕊 난이도

Level 1

📣 풀이 방법

  • 연속적으로 깨질 수 있으면 3개도 깨질 수 있다고 생각해서 고민했는데 문제를 잘못 읽었다. 오직 2개가 만날 때만 깨질 수 있다.

  • move 로 배열을 돌면서 해당하는 지점의 수가 0이 아니라면 진행한다.
    1 ) 만약 bucket의 마지막 수와 해당 지점의 수가 일치한다면 bucket에서 pop을 해주고 answer에 2를 더해준다
    2) 만약 일치하지 않는다면 push 만 해준다.

    • 마지막으로 뺀 인형 자리에는 0으로 채워준다.

📄 전체 풀이

function solution(board, moves) {
  var answer = 0;

  let bucket = [];
  const boardHeight = board.length;

  for (const move of moves) {
    for (let j = 0; j < boardHeight; j++) {
      if (board[j][move - 1]) {
        if (bucket[bucket.length - 1] === board[j][move - 1]) {
          bucket.pop();
          answer += 2;
        } else {
          bucket.push(board[j][move - 1]);
        }

        board[j][move - 1] = 0;
        break;
      }
    }
  }

  return answer;
}
profile
이전해요 ☘️ https://mei-zy.tistory.com

0개의 댓글