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

LV1 쉬운문제로 파이썬으로 코딩하기 연습...

 

문제는 간단하게 다음과 같이 풀이하면 된다.

1. board에 있는 녀석을 꺼낸다 

2. stack에 넣는다

3. board에 있었던 자리를 초기화한다 (0으로)

4. 한가지 command가 끝날때 마다 스택을 체크해서 같은게 두개 있으면 터뜨린다.

 

구현할 때 유의할 점은 파이썬에서는 리스트의 인덱스에 -1 -2 등 음수값을 넣을 수 있는데

-1 의 경우 맨 끝자리다 (즉슨 -2의 경우 맨 끝의 앞자리)

 

더보기
def solution(board, moves):
    answer = 0
    arr=[]
    for i in moves:
        for j in range(len(board)):
            if(board[j][i-1] == 0):
                pass
            else:
                arr.append(board[j][i-1])
                board[j][i-1] = 0
                break
        if(len(arr)>=2 and arr[-1]==arr[-2]):
            answer+=2
            arr.pop(-1)
            arr.pop(-1)
    return answer

board=[[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]]
moves =[1,5,3,5,1,2,1,4]
solution(board,moves)

'Programming > 알고리즘' 카테고리의 다른 글

[LeetCode] Symmetric Tree  (0) 2022.05.05
[프로그래머스] 타겟 넘버  (0) 2021.03.22
[백준][10174]팰린드롬  (0) 2020.10.17
[백준][2577] 숫자의 개수  (0) 2020.10.17
백준 3190 뱀  (0) 2019.10.11
복사했습니다!