320x100
https://school.programmers.co.kr/learn/courses/30/lessons/64061
문제설명이 좀 긴데.. 조건은 아래와 같다.
- 같은 인형 2개가 뽑히면 그 둘은 터트려져 사라진다.
- 맨 위에서부터 집게 되며 빈 column을 집게 되면 아무것도 집히지 않고 넘어간다.
- 배열의 높이 제한( = row 수)은 없다.
def solution(board, moves):
answer = 0
basket = []
for m in moves:
for row in board: # 맨 위에서부터 탐색
if row[m-1] == 0 : # 인형이 없는 경우
continue # pass로 해도 런타임은 비슷하다.
else : # 인형이 있는 경우
basket.append(row[m-1])
row[m-1] = 0 # 빈 공간 만들기.
break # m에 대한 뽑기 종료.
# 뽑은 직후, basket 내 두 인형이 같은지 check
# basket에 인형이 하나만 있는 경우, '==' 연산에서 index error 발생 : 길이 check
if len(basket) > 1 and basket[-1] == basket[-2]:
basket = basket[:-2]
answer += 2
return answer
계속 index error가 나길래 한참 봤는데, basket length가 1일 때를 고려 안 했다. 엉엉
'코딩테스트' 카테고리의 다른 글
[파이썬] 체육복 [CODING TEST #8] (0) | 2022.07.20 |
---|---|
[파이썬] 모의고사 [CODING TEST #7] (0) | 2022.07.20 |
[파이썬] 없는 숫자 더하기 - 프로그래머스 월간 코드 챌린지 시즌3 [CODING TEST #5] (0) | 2022.07.19 |
[파이썬] 숫자 문자열과 영단어 - 2021 카카오 채용연계형 인턴십 [CODING TEST #4] (0) | 2022.07.19 |
[파이썬] 신고 결과 받기 - 2022 KAKAO BLIND [CODING TEST #3] (0) | 2022.07.19 |
댓글