반응형
https://programmers.co.kr/learn/courses/30/lessons/42840
단순 반복문 문제다.
파이썬 활용 시, enum의 응용력을 배양할 수 있는 문제다
def solution(answers):
# 1번의 패턴
p_1 = [1, 2, 3, 4, 5]
# 2번의 패턴
p_2 = [2, 1, 2, 3, 2, 4, 2, 5]
# 3번의 패턴
p_3 = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5]
# 각각의 수포자들을 iteration 돌기 위해 리스트에 넣어줌
test = [p_1, p_2, p_3]
# 해당 인덱스의 수포자가 맞았을 경우
temp = [0] * len(test)
# 해당 정답의 인덱스에 대해서
for a_i in range(len(answers)):
# 모든 수포자를 순회한다.
for i, p in enumerate(test):
# 만약 해당 수포자가 맞았으면.
if p[a_i % len(p)] == answers[a_i]:
# 해당 수포자의 인덱스에 +1 해줌
temp[i] += 1
# 해당 수포자가 제일 많이 맞췄으면 해당 수포자의 index + 1을 리스트에 저장.
return [i + 1 for i, v in enumerate(temp) if v == max(temp)]
반응형
'ETC' 카테고리의 다른 글
[LV1] 체육복 Python (0) | 2020.10.03 |
---|---|
[LV1] K번째 수 Python (0) | 2020.10.03 |
[LV1] 완주하지 못한 선수 python (0) | 2020.10.03 |
[LV1] 프로그래머스 최대값 구하기 mysql (0) | 2020.10.03 |
[LV1] 2개 뽑아서 더하기 Python (0) | 2020.10.03 |