https://programmers.co.kr/learn/courses/30/lessons/64061
def solution(board, moves):
basket = []
cnt = 0
for move in moves:
move -= 1
for i in range(len(board)):
if board[i][move] == 0:
continue
basket.append(board[i][move])
board[i][move] = 0
break
if len(basket) <= 1:
continue
while True:
if len(basket) <= 1 or basket[-1] != basket[-2]:
break
basket = basket[:-2]
cnt += 2
return cnt
바구니 안에 담긴 인형들이 같은지 확인하는 while 문에서 실수가 있었다.
len(basket)을 확인하는 코드 없이 실행하니 [4]
처럼 원소가 하나만 남는 경우가 발생했던 것이다. basket의 원소가 두개 이상일 때에만 원소를 삭제하도록 수정해주었다.