파이썬 문제풀이/구현

[삼성 sw 파이썬] 1204 최빈수 구하기

ari0930 2024. 4. 27. 21:45

문제

1000명의 수학 성정을 토대로 통계 자료를 만들려고 한다.

이때 이 학교에서는 최빈수를 이용하여 학생들의 평균 수준을 짐작한다.

10,8,7,2,2,4,8,8,8,9,5,5,3이라는 학생들이 성적이 주어질 때 이때 최빈수는 8 이 된다.

최빈수를 출력하는 프로그램을 작성하시오.

입력

첫번째 줄에는 테스트 케이스 T가 주어진다.

각 테이스 케이의 첫 줄에는 테스트 케이스 번호가 주어지고 그다음 줄부터 점수가 주어진다.

출력

#부호와 함께 테스트 게이스의 번호를 출력하고 공백 문자후 테스트 케이스에 대한 답을 출력한다.

풀이 

count()를 사용하여 현재 수가 주어진 데이터에서 몇번이나 나타나는지 확인하였다.

for문을 돌면서 count값과 현재수를 확인하여 현재까지 기록된 count 값보다 크다면 현재수를 저장하고 count값도 저장한다. 그리고 만약 count 값이 같다면 저장된 수와 현재수중 큰 수를 저장한다.

코드

t=int(input())
for i in range(t):
    k=int(input())
    array=list(map(int,input().split()))
    max_num=-1
    max_count=0
    for j in array:
        a=array.count(j)
        if a>max_count:
            max_count=a
            max_num=j
        elif a==max_count:
            max_num=max(max_num,j)
    print("#{} {}".format(i+1,max_num))

 

반응형