프로그래머스 문제기록

[완점탐색] 2. 모의고사

코딩펭귄 2023. 10. 19. 19:04

 

def solution(answers):
    answer = []
    score = [0,0,0]   # score = [s1정답개수, s2정답개수, s3정답개수]
    s1 = [1,2,3,4,5]      # 길이 = 5
    s2 = [2,1,2,3,2,4,2,5]   # 길이 = 8
    s3 = [3,3,1,1,2,2,4,4,5,5] # 길이 = 10
    
    for i in range(len(answers)):
        if answers[i] == s1[i%5]:  # answer의 i인덱스값 = s1의 i인덱스값이 같다면, 즉 정답이라면
            score[0] += 1          # score 값, 즉 정답개수 +1 
        if answers[i] == s2[i%8]:
            score[1] += 1
        if answers[i] == s3[i%10]:
            score[2] += 1
            
# enumerate함수는 튜플로 만들어주므로, 인덱스와 원소를 각각 다른변수에 할당하기 위해 
# 인자풀기(unpacking) 진행 -> for i, num in enumerate(['a', 'b', 'c'])  
    for j, scr in enumerate(score): # j = 인덱스값, scr = value값
        print(j, scr)
        if scr == max(score):       # score=[1,0,0], max(score) = 1
            answer.append(j+1)
    
    return answer