S E P H ' S

[Python] 모의고사 본문

Algorithm/Programmers

[Python] 모의고사

yoseph0310 2021. 7. 5. 22:15

 

 

코딩테스트 연습 - 모의고사

수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는

programmers.co.kr

1. 수포자들이 찍는 방식을 리스트로 만든다.

2. answers 만큼 반복문을 돌면서 p1과 같으면 cnt1, p2와 같으면 cnt2, p3와 같으면 cnt3을 증가시킨다.

3. 그것을 answer_temp에 담는다.

4. 가장 많은 문제를 맞춘 사람을 맞춰야한다. 인덱스와 값을 낼 수 있도록 enumerate를 사용하여 score가 max와 같은 인덱스 + 1을 정답 리스트에 append한다.

 

def solution(answers):
	answer = []
    answer_temp = []
    cnt1 = 0
    cnt2 = 0
    cnt3 = 0
	p1 = [1, 2, 3, 4, 5]
    p2 = [2, 1, 2, 3, 2, 4, 2, 5]
    p3 = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5]
    
    for i in range(len(answers)):
    	if answers[i] == p1[i % len(p1)]:
        	cnt1 += 1
        if answers[i] == p2[i % len(p2)]:
        	cnt2 += 1
        if answers[i] == p3[i % len(p3)]:
        	cnt3 += 1
        
    answer_temp = [cnt1, cnt2, cnt3]
    
    for person, score in enumerate(answer_temp):
    	if score == max(answer_temp):
        	answer.append(person+1)
    
    return answer

'Algorithm > Programmers' 카테고리의 다른 글

[Python] 체육복  (0) 2021.07.06
[Python] 소수찾기  (0) 2021.07.06
[Python] 소수 만들기  (0) 2021.06.30
[Python] 시저 암호  (0) 2021.06.25
[Python] 최대공약수와 최소공배수  (0) 2021.06.25