반응형
문제
https://programmers.co.kr/learn/courses/30/lessons/64061
풀이
스택 자료구조를 이용하여 문제를 해결한다.
0이 아닌 숫자들은 스택에 저장하고 스택에 저장되어 있는 숫자들 중에 상위 2개가 같은지 비교한다.
코드
python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
def solution(board, moves):
answer = 0
board = list(map(list, zip(*board)))
board = [[i for i in item if i != 0] for item in board]
s = []
for i in moves:
if len(board[i - 1]) == 0:
continue
s.append(board[i - 1].pop(0))
if s[-1] == 0:
s.pop(-1)
while len(s) >= 2 and s[-1] == s[-2]:
s.pop(-1)
s.pop(-1)
answer += 2
return answer
|
cs |
반응형
'프로그래머스' 카테고리의 다른 글
프로그래머스 - 문자열 압축 (0) | 2021.08.22 |
---|---|
프로그래머스 - 키패드 누르기 (0) | 2021.08.21 |
프로그래머스 - 124 나라의 숫자 (0) | 2021.08.19 |
프로그래머스 - 모의고사 (0) | 2021.08.18 |
프로그래머스 - 숫자 문자열과 영단어 (0) | 2021.08.16 |