상세 컨텐츠

본문 제목

[coding_test]크레인 인형뽑기

coding/coding_test

by golduny_zoo 2021. 5. 31. 09:56

본문

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번째, 1번째... 이렇게 한 스택이 되고, 

인형이 꺼내지면 숫자는 0으로 바꿔주는게 좋겠다 라고 생각했다.

 

인형을 담는 바구니는 

숫자가 2번 반복되면 없애주고, 다시 꺼내온 대로 정렬을 했을 때 반복을 확인해서 없애주어야 한다. 

 

def solution(board, moves):
    result = ['0']
    answer = 0
    for i in moves:

        for j in range(len(board)):
            if board[j][i-1] != 0:
                if result[-1] == board[j][i-1]:
                    result.pop()
                    answer += 1
                else:
                    result.append(board[j][i-1])
                board[j][i-1] = 0 
                break
    return answer*2

문제풀이 후

- 문제를 풀었을 때 스택,큐에 대해 한번 더 생각을 하고 , 정리할 수 있었다. 

 

 

 

'coding > coding_test' 카테고리의 다른 글

[codint_test]짝지어 제거하기  (0) 2021.06.09
[coding_test]큰 수 만들기  (0) 2021.06.09
[coding_test]기능개발  (0) 2021.05.25
[coding_test]더 맵게  (0) 2021.05.24
[coding_test]음양 더하기  (0) 2021.05.20

관련글 더보기