새소식

Programming/1 Day 1 Commit

[Programmars] 완전탐색: 모의고사(Python3)

  • -

1 Day 1 Commit 챌린지

그 동안 시험 공부한다는 핑계로 미뤄놨던 챌린지를 다시 이어가보도록 한다. 

 

 

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

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

programmers.co.kr

 

생각보다 어려워서 somjang님의 풀이를 참고하여 답안을 완성하였다. 

def solution(answers):
    answer = []
    
    tester_1 = [1,2,3,4,5]
    tester_2 = [2,1,2,3,2,4,2,5]
    tester_3 = [3,3,1,1,2,2,4,4,5,5]
    
    len_tester_1 = len(tester_1)
    len_tester_2 = len(tester_2)
    len_tester_3 = len(tester_3)
    
    check_1 = 0
    check_2 = 0
    check_3 = 0
    
    for i in range(len(answers)):
        if tester_1[i%len_tester_1] == answers[i]:
            check_1 = check_1 + 1
        if tester_2[i%len_tester_2] == answers[i]:
            check_2 = check_2 + 1
        if tester_3[i%len_tester_3] == answers[i]:
            check_3 = check_3 + 1
            
    max_right = max(check_1, check_2, check_3)
    
    if max_right == check_1: 
        answer.append(1)
    if max_right == check_2: 
        answer.append(2)
    if max_right == check_3: 
        answer.append(3)
        
    answer = sorted(answer)

            
    return answer

막상 풀고 나면 이해하기는 어렵지 않은 코드. 

하지만 반복하여 답을 맞춰나가는 과정이 어려운 부분이었다. 

 

 

GitHub - Park-Minjoo/CODINGINTERVIEW_PRACTICE: 1 Day 1 Problem since 2022.4.7

1 Day 1 Problem since 2022.4.7. Contribute to Park-Minjoo/CODINGINTERVIEW_PRACTICE development by creating an account on GitHub.

github.com

 

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.