풀이 과정
- 최대 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
- 최초의 점수는 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
- 최댓값은 사람을 리스트로 만들어서 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