Gaegul's devlog

[SWEA] 1204. 최빈수 구하기 본문

Algorithm/Algorithm 풀이

[SWEA] 1204. 최빈수 구하기

부지런깨꾹이 2021. 8. 11. 12:08
728x90
반응형

SW Expert Academy [S/W 문제해결 기본] 시리즈

1204. 최빈수 구하기 문제

 

[문제]

최빈수를 출력하는 프로그램을 작성하여라 (단, 최빈수가 여러 개 일 때에는 가장 큰 점수를 출력하라).



[제약 사항]

학생의 수는 1000명이며, 각 학생의 점수는 0점 이상 100점 이하의 값이다.

 



 [입력]


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

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



[출력]

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



[CODE]

from collections import Counter
​
T = int(input()) #테스트 케이스
​
# 여러개의 테스트 케이스가 주어지므로, 각각을 처리합니다.
for _ in range(1, T + 1):
    n = int(input())
    score = list(map(int, input().split()))
    num = Counter(score).most_common()[0][0] #가장 첫번째 = 빈도수 높으면서 제일 큰 수
    print("#"+str(n),str(num))

 

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV13zo1KAAACFAYh&categoryId=AV13zo1KAAACFAYh&categoryType=CODE&problemTitle=S%2FW&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=&pageSize=10&pageIndex=5

 

SW Expert Academy

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

swexpertacademy.com

 

어려운 문제는 아니였고, python 내장함수 Counter 를 사용하면 더 쉽게 풀 수 있었던 문제였던 것 같다. 

⭐️ Solution 

from collectios import Counter

num = Counter(score).most_common()[0][0] #가장 첫번째 = 빈도수 높으면서 제일 큰 수

 

* Counter().most_common() 결과 예시

 

728x90
반응형

'Algorithm > Algorithm 풀이' 카테고리의 다른 글

[SWEA] 1213. String  (0) 2021.08.21
[SWEA] 1210. Ladder1  (0) 2021.08.21
[SWEA] 1209. Sum  (0) 2021.08.21
[SWEA] 1208. Flatten  (0) 2021.08.11
[SWEA] 1206. View  (0) 2021.08.11
Comments