알고리즘 & 코딩테스트
[프로그래머스] 2019 카카오 개발자 겨울 인턴십 | 크레인 인형뽑기 게임
Haksae
2022. 3. 18. 01:16
[크레인 인형뽑기 게임]
👉🏻 답안
def solution(boards, moves):
answer = 0
bucket = [] // 뽑은 인형을 두는 스택
for move in moves:
for board in boards:
if board[move-1] != 0: // 0이 아니면 인형이 있으니 뽑아서
bucket.append(board[move-1]) // 바구니에 넣어라
board[move-1] = 0 // 그리그 그 인형 칸을 0으로 만들어라
break
if len(bucket) >= 2 and bucket[-1] == bucket[-2]: // 바구니에 후입된 2개의 인형이 같으면
answer += 2 // 카운트하고
bucket = bucket[:-2] // 2개를 파괴!
return answer
📑 설명
- 카카오의 인형 느낌을 살리고 싶어서, 그냥 문제를 그대로 가져왔다.
- 이번 문제틑 스택으로 풀면 되는 사실은 간단한 문제였다. 다만 이 문제를 푸는데 오래 걸렸었는데.. 그것은 다름 아닌 2차원 배열을 잘못 이해한 것이었다.... 나는 인형이 담킨 열이 하나의 배열로 생각했다.. 바보같은 생각이었다 허허
- 로직은 어렵지 않아서 그냥 위에 적어 놓은 것으로 대체해도 될 듯 하다.