문제 설명 및 제한사항
아이디어 및 해결 방법
코드
def solution(board, moves):
C = len(board[0])
R = len(board)
newboard = []
for c in range(C):
newboard.append([board[r][c] for r in range(R-1, -1, -1) if board[r][c] != 0])
answer = 0
stack = []
for move in moves:
if len(newboard[move-1]) == 0:
continue
stack.append(newboard[move-1].pop())
if len(stack) >= 2 and stack[-2] == stack[-1]:
answer += 2
stack = stack[:-2]
return answer
Python
복사
출처
프로그래머스 코딩테스트 연습 https://school.programmers.co.kr/learn/challenges