본문 바로가기

ETC

[LV1] 모의고사 python

반응형

https://programmers.co.kr/learn/courses/30/lessons/42840

 

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

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

programmers.co.kr

단순 반복문 문제다.

 

파이썬 활용 시, enum의 응용력을 배양할 수 있는 문제다

 

def solution(answers):
	# 1번의 패턴
    p_1 = [1, 2, 3, 4, 5]
    # 2번의 패턴
    p_2 = [2, 1, 2, 3, 2, 4, 2, 5]
    # 3번의 패턴
    p_3 = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5]
    # 각각의 수포자들을 iteration 돌기 위해 리스트에 넣어줌
    test = [p_1, p_2, p_3]
    # 해당 인덱스의 수포자가 맞았을 경우
    temp = [0] * len(test)
    # 해당 정답의 인덱스에 대해서
    for a_i in range(len(answers)):
    # 모든 수포자를 순회한다.
        for i, p in enumerate(test):
        	# 만약 해당 수포자가 맞았으면.
            if p[a_i % len(p)] == answers[a_i]:
            # 해당 수포자의 인덱스에 +1 해줌
                temp[i] += 1
	# 해당 수포자가 제일 많이 맞췄으면 해당 수포자의 index + 1을 리스트에 저장.
    return [i + 1 for i, v in enumerate(temp) if v == max(temp)]

 

반응형

'ETC' 카테고리의 다른 글

[LV1] 체육복 Python  (0) 2020.10.03
[LV1] K번째 수 Python  (0) 2020.10.03
[LV1] 완주하지 못한 선수 python  (0) 2020.10.03
[LV1] 프로그래머스 최대값 구하기 mysql  (0) 2020.10.03
[LV1] 2개 뽑아서 더하기 Python  (0) 2020.10.03