728x90
    
    
  https://programmers.co.kr/learn/courses/30/lessons/64061
코딩테스트 연습 - 크레인 인형뽑기 게임
[[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
문제 풀이
간단한 구현 문제였다.
이동할 곳 위에서부터 차례대로 확인한다. 0일 때는 빈 공간이므로 continue를 이용해 다음으로 넘어간다.
값이 존재할 때 공간을 빈칸으로 바꾸어주고 넘어간다.
스택의 top과 board의 값과 비교해서 지우거나 쌓아준다.
느낀 점
어렵지 않은 문제였다! 이런 구현 문제는 재밌는 것 같다.
코드
def solution(board, moves):
    answer = 0
    bucket = []
    
    for m in moves:
        for i in range(len(board)):
            if board[i][m-1] == 0: continue
            if bucket and board[i][m-1] == bucket[-1]:
                bucket.pop()
                answer += 2
            else:
                bucket.append(board[i][m-1])
            board[i][m-1] = 0
            break
        
    return answer'문제 풀이 > 프로그래머스 (Programmers)' 카테고리의 다른 글
| [Python] 프로그래머스 : 음양 더하기 (0) | 2022.06.22 | 
|---|---|
| [Python] 프로그래머스 : 없는 숫자 더하기 (0) | 2022.06.22 | 
| [Python] 프로그래머스 : 숫자 문자열과 영단어 (0) | 2022.06.21 | 
| [Python] 프로그래머스 : 신규 아이디 추천 (0) | 2022.06.19 | 
| [Python] 프로그래머스 : 신고 결과 받기 (0) | 2022.06.18 | 
댓글