https://school.programmers.co.kr/learn/courses/30/lessons/42840
📝 내가 작성한 코드
def solution(answers):
answer = []
scores = [0,0,0]
# 각 수포자들이 찍는 정답 배열
person_1 = [1, 2, 3, 4, 5]
person_2 = [2, 1, 2, 3, 2, 4, 2, 5]
person_3 = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5]
# answers 배열을 반복하면서 정답과 수포자의 답이 일치하는 지 체크한다
for idx, val in enumerate(answers):
# 1번 수포자는 5개의 답이 반복되므로 index를 5로 나눠서 정답 배열 안에서 돌도록 한다
if val == person_1[idx%5]:
scores[0] += 1
# 2번 수포자는 8개의 답이 반복되므로 index를 8로 나눠서 정답 배열 안에서 돌도록 한다
if val == person_2[idx%8]:
scores[1] += 1
# 3번 수포자는 10개의 답이 반복되므로 index를 10으로 나눠서 정답 배열 안에서 돌도록 한다
if val == person_3[idx%10]:
scores[2] += 1
# 점수 계산이 끝난 후 가장 높은 점수를 가진 index 리스트 리턴
for i,score in enumerate(scores,1):
if score == max(scores):
answer.append(i)
return answer
'개발 > 코딩테스트' 카테고리의 다른 글
[Softeer] 위험한 효도 (0) | 2024.02.22 |
---|---|
[Softeer] 근무 시간 (0) | 2024.02.22 |
[프로그래머스] 배열 조각하기 (0) | 2024.02.15 |
[프로그래머스] 문자열이 몇 번 등장하는 지 세기 (0) | 2024.02.15 |
[프로그래머스] 옹알이(2) (0) | 2024.02.13 |