알고리즘/백준

백준 2108: 통계학 (Python)

sssbin 2021. 9. 13. 15:43

https://www.acmicpc.net/problem/2108

 

2108번: 통계학

첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 단, N은 홀수이다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다.

www.acmicpc.net

 

from collections import Counter
import sys

n = int(sys.stdin.readline())
num = []

for i in range(n):
    num.append(int(sys.stdin.readline()))

print(round(sum(num)/n))

num.sort()
print(num[n//2])

counter = Counter(num).most_common()
if len(counter) > 1 and counter[0][1] == counter[1][1]:
    print(counter[1][0])
else:
    print(counter[0][0])

print(max(num)-min(num))

 

Counter 함수

- from collections import Counter

- 리스트 원소 개수 셈

- Counter(list).most_common() : 빈도값이 큰 순서대로 출력!