Lv.1 크레인 인형뽑기 게임

김다은·2023년 11월 13일
0

코딩테스트

목록 보기
7/8

프로그래머스에서 제공하는 2019 카카오 개발자 겨울 인턴십에 나온 문제인 크레인 인형뽑기 게임을 정리해보자

문제 설명

자세한 문제는 https://school.programmers.co.kr/learn/courses/30/lessons/64061 에서 확인!

문제 해결 방법

  • 뽑은 인형을 넣을 수 있는 바구니 배열을 만든다
  • 크레인이 뽑은 값에 조건을 적용한다
    • board에 있는 0은 없는 것이기 0이 아닐때 bucket에 추가
  • bucket 안의 값에 따라 조건
    • bucket[-1]과 bucket[-2]이 같으면 제거한다
    • 인형 한 쌍이 사라졌기 때문에 2점 추가한다
def solution(board, moves):
    bucket = []
    answer = 0
    for move in moves:
        for i in range(len(board)):
            if board[i][move-1] != 0:
                bucket.append(board[i][move-1]) # 오른쪽 바구니로 넣기
                board[i][move-1] = 0  # 0이 곧 없는 의미
                
                if len(bucket)>1:
                    if bucket[-1] == bucket[-2]:
                        bucket.pop()
                        bucket.pop()
                        answer = answer + 2
                break
    return answer

느낀점

카카오 문제를 처음 접하고 처음 풀어보는데 생각보다 문제가 재밌어서 놀랐다. 굉장히 어려울 줄 알았는데 하나하나 어떻게 해결할지 고민하다 풀린 문제였다. 물론 객관적으로 봤을 때 어려운 문제라고 할 수 없지만 코테 뉴비인 나에겐 꽤 어려웠다. 처음 봤을 때 '와, 이거 어떻게 풀어'라고 생각했지만 오히려 도전했기 때문에 실력이 느는 기분이다. 파이팅

profile
이제는 더이상 물러날 곳이 없다

0개의 댓글