honey_pot
[python] 크레인 인형뽑기 게임 본문
https://programmers.co.kr/learn/courses/30/lessons/64061
def solution(board, moves):
answer = 0
stack = []
n = len(board)
for i in moves:
for b in range(n):
if board[b][i-1] >0:
stack.append(board[b][i-1])
board[b][i-1] = 0
if stack[-1:] == stack[-2:-1]:
stack.pop(-1)
stack.pop(-1)
answer += 2
break
return answer
stack으로 옮긴 인형을 board에서 0 처리해야 중복으로 뽑지 않는다.
그리고 다 옮긴 후에 stack에서 인형을 터뜨리는게 아니라 두개 이상이면 바로바로 없애야 하므로 바로 if문으로
stack 내용물을 비교해야 한다.
pop 대신 slicing 해도 되는데 pop이 더 편해서 pop으로 했다.
break를 잊지 말자
'문제 풀이' 카테고리의 다른 글
[python] 소수 만들기 (0) | 2021.09.09 |
---|---|
[python] 체육복 (0) | 2021.09.09 |
[python] 로또의 최고 순위와 최저 순위 (0) | 2021.09.09 |
[python] 비밀지도 (0) | 2021.09.09 |
[python] 폰켓몬 (0) | 2021.09.08 |
Comments