주어진 2차원배열에서 숫자를 뽑아낼 때, 뽑아낸 숫자들이 2번 연속 같을 경우 사라지며, 사라진 숫자들의 갯수를 반환하는 함수 작성
def solution(board, moves):
stack = []
answer = 0
for move in moves:
for line in board:
if line[move-1] != 0:
stack.append(line[move-1])
line[move-1] = 0
break
if len(stack) > 1:
if stack[-2] == stack[-1]:
stack.pop()
stack.pop()
answer += 2
return answer
stack
및 사라진 숫자들의 갯수를 저장할 정수형 변수 answer
생성moves
를 순환하는 for
Loop 선언board
안의 줄 개체에 접근해야하므로 또 다른 for Loop 선언move-1
인덱스에 해당하는 값이 0이 아닐 경우에만 동작하면 되므로 조건문을 설정하고, stack
에 해당 값을 저장한 뒤 0으로 변환 후 line탐색 종료(break)stack
에 저장된 값들의 확인은 매 크레인 이동마다 확인하면 되므로 indent에 주의하여 stack
의 길이가 2 이상인지 판별하는 조건문 설정stack
의 길이가 2 이상일 때, 뒤에서 첫번째와 두번째 개체 값이 동일할 경우 pop()
2번 수행 후 answer
에 2를 더해줌