def solution(answers):
answer = []
def method_1(answers):
inputs = [1,2,3,4,5]*(10000//5 + 1)
result = [1 for i,value in enumerate(answers) if answers[i] == inputs[i]]
return sum(result)
def method_2(answers):
inputs = [2,1,2,3,2,4,2,5]*(10000//8 + 1)
result = [1 for i,value in enumerate(answers) if answers[i] == inputs[i]]
return sum(result)
def method_3(answers):
inputs = [3,3,1,1,2,2,4,4,5,5]*(10000//10 + 1)
result = [1 for i,value in enumerate(answers) if answers[i] == inputs[i]]
return sum(result)
answer.append((1, method_1(answers)))
answer.append((2, method_2(answers)))
answer.append((3, method_3(answers)))
highest = max([x[1] for x in answer])
answer = [x[0] for x in answer if x[1]==highest]
return answer
이번 문제는 1, 2, 3번 수포자가 찍는 방식대로 문제를 찍었을 때, 실제 답과 비교하여 가장 높은 점수를 받은 사람을 구하는 문제이다.
각 수포자 별로 점수를 계산하는 함수를 선언하여 간단하게 풀이하였다 :)
'Algorithm 💡 > BruteForce' 카테고리의 다른 글
[백준 1018번] 체스판 다시 칠하기 (0) | 2023.10.18 |
---|---|
[백준 2798번] 블랙잭 (0) | 2023.10.18 |
[프로그래머스 Lv.1] 최소직사각형 (0) | 2023.09.28 |
[백준 1476번] 날짜 계산 (0) | 2023.05.04 |
[백준 1107번] 리모컨 (0) | 2023.05.03 |