크레인 인형뽑기 게임 [level 1]

# 1. NxN 크기 크레인/ 오른쪽에는 바구니
# 2. 인형은 차곡차곡 쌓여잇음
# 3. 같은 모양 인형 두개가 바구니에 연속 -> 터지면서 바구니에서 사라짐
# 4. 게임 화면의 격자 상태 (2차원 배열 board)
# 5. 크레인을 작동시킨 위치가 담긴 배열 moves
# 6. 크레인 작동 후 터뜨려진 인형 개수 return
# stack으로 pop 하면풀릴 듯
# 0 은 빈 칸

def solution(board, moves):
    answer = 0
    cnt=0
    basket=[]
    
    for crain_num in moves:
        for i in range(len(board)):
            if i+1==crain_num: # 인형 제거해 주려는 열을 찾기
                for j in range(len(board)): # 열 전체를 탐색
                    if board[j][i]!=0: # 인형이 있는 경우 (0이 아님)
                        doll=board[j][i]
                        if len(basket)!=0 and basket[-1]==doll:
                            cnt+=2
                            basket=basket[:-1]
                            break
                        else:
                            basket.append(doll)
                            board[j][i]=0 # 이미 뽑은 인형은 0이 됨.
                            break
                      

 
            
            
    answer=cnt
    
                
                
            
    return answer
    
  • 테스트 케이스 10개 중 3개 통과 코드 (이유 모르겠음)

좋은 웹페이지 즐겨찾기