반응형
프로그래머스
2019 카카오 개발자 겨울 인턴 기출문제
def solution(board, moves):
answer = 0
bucket = []
for m in moves:
for line in board:
if line[m-1] != 0:
bucket.append(line[m-1])
line[m-1] = 0
break
if len(bucket) >= 2 and bucket[-1] == bucket[-2]:
answer+= 2
bucket = bucket[:-2]
return answer
def solution(board, moves):
cols = list(map(lambda x: list(filter(lambda y: y > 0, x)), zip(*board)))
a, s = 0, [0]
for m in moves:
if len(cols[m - 1]) > 0:
if (d := cols[m - 1].pop(0)) == (l := s.pop()):
a += 2
else:
s.extend([l, d])
return a
반응형
'DS > Coding Test' 카테고리의 다른 글
[Python][Two Pointers] 두 큐 합 같게 만들기 (0) | 2023.05.18 |
---|---|
[Python] 로또의 최고 순위와 최저 순위 (0) | 2023.05.18 |
[Python][BFS] 거리두기 확인하기 (0) | 2023.05.17 |
[Python] 개인정보 수집 유효기간 (0) | 2023.05.17 |
[Python] 숫자 문자열과 영단어 (0) | 2023.05.16 |