반응형
나머지(%)를 활용하여 주기적으로 반복되는 경우를 처리할 수 있다.
def solution(a):
n1 = [1, 2, 3, 4, 5]
n2 = [2, 1, 2, 3, 2, 4, 2, 5]
n3 = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5]
r = [0] * 3
for idx, i in enumerate(a):
if i == n1[idx % len(n1)]:
# 리스트의 인덱스를 통해 특정 조건이 만족한 경우의 수를 누적
r[0] += 1
if i == n1[idx % len(n2)]:
r[1] += 1
if i == n1[idx % len(n3)]:
r[2] += 1
k = []
for idx, i in enumerate(r):
if i == max(r):
k.append(idx + 1)
return k
반응형
'프로그래밍 > 알고리즘 & 자료구조' 카테고리의 다른 글
[프로그래머스] 카펫 with 파이썬 (0) | 2023.04.25 |
---|---|
[프로그래머스] 체육복 with 파이썬 (0) | 2023.04.24 |
[프로그래머스] 입국심사 with 파이썬 (0) | 2023.04.22 |
[프로그래머스] 최소 직사각형 with 파이썬 (0) | 2023.04.21 |
[백준] 랜선 자르기 with 파이썬 / 이진탐색, 이분탐색 (0) | 2023.04.20 |
댓글