코딩테스트
[코딩테스트] 프로그래머스 크레인 인형뽑기 with Python
hanbindev
2021. 5. 20. 10:19
문제 풀이 코드
def solution(board, moves):
answer = 0
result_stack = []
for move in moves:
for i, column in enumerate(board):
if column[move - 1] != 0:
if len(result_stack) > 0:
if (recent := result_stack.pop()) == column[move - 1]: #1
answer += 2
board[i][move - 1] = 0
break
else:
result_stack.append(recent)
result_stack.append(column[move - 1])
board[i][move - 1] = 0
break
return answer
#1
왈러스 연산자를 사용해서 pop 한 값(recent)을 if else 네임스페이스에서 사용할 수 있도록 했다.