SW Expert Academy

[SWEA] [S/W 문제해결 기본] 1일차 - 최빈수 구하기 D2 (1204) Python

RiLLa_0511 2023. 4. 30. 21:12
728x90

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV13zo1KAAACFAYh&categoryId=AV13zo1KAAACFAYh&categoryType=CODE&problemTitle=&orderBy=INQUERY_COUNT&selectCodeLang=PYTHON&select-1=&pageSize=10&pageIndex=1 

 

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

 

< 틀린 코드 >

 

3번째로 제출한 코드는 10개의 테스트 중 1개의 테스트를 통과하지 못했다.

 

문제의 댓글을 보니 최빈값이 여러 개 일 경우, 가장 큰 수를 출력해야 오류가 뜨지 않는다고 했다!

 

 

< 수정된 코드 >

 

score 리스트의 인덱스가 뒤로 갈 수록 큰 수이기 때문에 for문을 사용하여 큰 수 부터 확인하여 최빈값을 출력해주었다.

 

t = int(input())

for i in range(t):
    score = [0 for i in range(101)]
    number = int(input())
    n = list(map(int, input().split()))
    for j in range(len(n)):
        score[n[j]] = score[n[j]] + 1
        max_score = max(score)
        for k in range(100, 0, -1):
            if max_score == score[k]:
                max_index = k
                break
    print("#{} {}".format(i + 1, max_index))

 

 

 

 

혼자 공부하며 올리는 블로그입니다. 틀린 내용은 댓글 남겨주시면 감사하겠습니다.