본문 바로가기
알고리즘/프로그래머스

[Python] 크레인 인형뽑기 게임

by 컴공맨 2021. 1. 28.
 

코딩테스트 연습 - 크레인 인형뽑기 게임

[[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

programmers.co.kr


풀이

파이썬으로 처음 풀어본 알고리즘 문제라서 이상한 부분이 있을 수도 있습니다!

 

moves에서 값을 받아 해당 열을 조사해서 basket의 맨 뒤의 값

즉, 이전에 넣은 인형이 같다면 넣은 인형과 해당 인형 총 2개이므로 정답에 2를 더해주고

이전에 넣은 인형과 다르다면 basket에 넣어주기만 했습니다.


코드

def solution(board, moves):
    answer = 0

    basket = []
    board_len = len(board[0])

    for i in moves:
        for j in range(0, board_len):
            if board[j][i - 1] > 0:
                if len(basket) != 0 and basket[-1] == board[j][i - 1]:
                    basket.pop()
                    answer += 2
                else:
                    basket.append(board[j][i - 1])
                board[j][i - 1] = 0
                break

    return answer


board = [list(map(int, input().split())) for _ in range(5)]
moves = list(map(int, input().split()))

print(solution(board, moves))

 

pyo7410/Algorithm

1일 1커밋을 목표로! Contribute to pyo7410/Algorithm development by creating an account on GitHub.

github.com

 

'알고리즘 > 프로그래머스' 카테고리의 다른 글

[Python] 체육복  (0) 2021.02.13
[Python] 모의고사  (0) 2021.02.12
[Python] 완주하지 못한 선수  (0) 2021.02.07
[Python] 신규 아이디 추천  (0) 2021.02.04
[Python] 두 개 뽑아서 더하기  (0) 2021.01.30