코딩문제풀이/파이썬

[프로그래머스] 크레인 인형뽑기 게임 (파이썬)

오늘밤공부 2023. 2. 22. 12:24
반응형

🗓️ 문제 설명

  • 주어진 board 배열에서 0은 인형이 없음을 나타내며, 0이 아닌 숫자는 인형의 id입니다.
  • 인형을 집기 위해 크레인을 작동시킨 위치가 담긴 배열 moves가 주어집니다.
  • 주어진 board 배열에서 인형(숫자)을 뽑아 바구니에 넣습니다.(뽑힌 인형은 board에서 사라집니다.)
  • 주어진 board 배열에서 같은 인형이 두 번 연속으로 뽑히면 두 인형은 터뜨려지면서 바구니에서 사라집니다.
  • 크레인(moves)를 모두 작동시킨 후 터뜨려져 사라진 인형의 개수를 반환하세요.
  • 제한 사항
    • board 배열은 2차원 배열로 크기 '5 X 5'이상 '30X30'이하입니다.
    • board의 각 칸에는 0 이상 100 이하인 정수가 담겨있습니다.
    • moves 배열의 크기는 1 이상 1000이하입니다.
    • moves 배열 각 원소들의 값은 1 이상이며, board 배열의 가로 크기 이하인 자연수입니다.
  • 입출력 예시
board moves result
[[0, 0, 0, 0, 0],
[0, 0, 1, 0, 3],
[0, 2, 5, 0, 1],
[4, 2, 4, 4, 2],
[3, 5, 1, 3, 1]]
[1, 5, 3, 5, 1, 2, 1, 4] 4

 

💻 코드

최종 코드

- 수정 사항
 >> 뽑힌 인형을 board에서 제거
 >> 불필요한 부분을 제거

 

코드 풀이

 

다른 사람 풀이

더보기

풀이 1번

 

 

⚙️ 시행착오

1차 시도

더보기

- 입출력 테스트 실패
- 반복문 연속 시행으로 기댓값보다 출력값이 크게 나옴

 

2차 시도

더보기

- 두번째 반복문 이후 break 추가
- 입출력 테스트 실패
- 뽑아준 인형을 board에서 제거하지 않음

 

알게된 점

더보기

- 스택 자료구조의 구조 : 후입선출

반응형