[프로그래머스] 모의고사 - Python

소울치킨·2022년 4월 25일
0

문제풀이

목록 보기
3/8
post-thumbnail

풀이 과정

    1. 최대 10000 문제가 출제되기 때문에 1,2,3번 수포자들의 정답지의 길이를 10000이 되도록 맞춘다.
man1 = [1,2,3,4,5] * 2000
man2 = [2,1,2,3,2,4,2,5] * 1250
man3 = [3,3,1,1,2,2,4,4,5,5] * 1000
    1. 최초의 점수는 0으로 만들어 놓고. for문으로 answers를 돌려서 정답인 사람의 점수를 1씩 올린다.
score = [0,0,0]
for i in range(len(answers)):
    if answers[i] == man1[i]: score[0] += 1
    if answers[i] == man2[i]: score[1] += 1
    if answers[i] == man3[i]: score[2] += 1
    1. 최댓값은 사람을 리스트로 만들어서 return한다.
answer = []
x = max(score)
for i in range(3):
    if score[i] == x:
        answer.append(i+1)
return answer

코드 전문

def solution(answers):
    man1 = [1,2,3,4,5] * 2000
    man2 = [2,1,2,3,2,4,2,5] * 1250
    man3 = [3,3,1,1,2,2,4,4,5,5] * 1000
    score = [0,0,0]
    for i in range(len(answers)):
        if answers[i] == man1[i]: score[0] += 1
        if answers[i] == man2[i]: score[1] += 1
        if answers[i] == man3[i]: score[2] += 1
    answer = []
    x = max(score)
    for i in range(3):
        if score[i] == x:
            answer.append(i+1)
    return answer
profile
소울치킨입니다

0개의 댓글