ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

728x90

๐ŸŽƒ 2019 ์นด์นด์˜ค ๊ฐœ๋ฐœ์ž ๊ฒจ์šธ ์ธํ„ด์‹ญ ๋ฌธ์ œ

 

์ž…์ถœ๋ ฅ ์˜ˆ์‹œ

 

์ฝ”๋“œ

์Šคํƒ์œผ๋กœ ํ•ด๊ฒฐํ–ˆ๋‹ค

def solution(board, moves):
    stack = []  # ์Šคํƒ
    cnt = 0  # answer
    for i in moves:  # moves๋ฅผ ์ˆœํšŒํ•˜๋ฉด์„œ
        for row in range(len(board)):
            if board[row][i-1]:  # 0์ด ์•„๋‹ˆ๋ฉด, stack์— ๋„ฃ๊ณ  0์œผ๋กœ ๋ฐ”๊พธ๊ธฐ
                stack.append(board[row][i-1])
                board[row][i-1] = 0
                break

        # ๋งŒ์•ฝ stack์— ๊ฐ™์€ ์ˆซ์ž๊ฐ€ ์žˆ์œผ๋ฉด ์‚ญ์ œ ํ›„ ์นด์šดํŠธ
        if len(stack) > 1:
            if stack[-1] == stack[-2]:
                cnt += 2
                stack.pop()
                stack.pop()
    return cnt

 

๋Œ“๊ธ€