모의 고사
시험은 최대 10000 문제로 정해져 있으므로, 찍는 패턴을 10000개씩 만들어주고 numpy
를 이용해 각 학생별로 맞춘 갯수를 {학생 : 점수}
형식으로 만든 후, 가장 많이 맞춘 학생을 찾아 return
해 주는데 정답자가 여러명일 수 있으니 각 학생 점수 max
값과 비교하여 정답을 return
합니다.
코드
import numpy as np
def solution(answers):
n = len(answers)
students = {1 : np.array([1, 2, 3, 4, 5]*2000),
2 : np.array([2, 1, 2, 3, 2, 4, 2, 5]*1250),
3 : np.array([3, 3, 1, 1, 2, 2, 4, 4, 5, 5]*1000)}
answer = {}
for student, ans in students.items() :
answer[student] = sum(np.array(answers) == ans[:n])
return [x for x in [1, 2, 3] if answer[x] == max(answer.values())]