import sys
from collections import Counter
input = sys.stdin.readline
n = int(input())
value = []
for _ in range(n) :
value.append(int(input()))
value.sort()
# 산술평균
sAvg = round(sum(value) / n)
print(sAvg)
# 중앙값
mid = (n-1) // 2
print(value[mid])
# 최빈값
if len(value) == 1 :
print(value[0])
else :
cnt = Counter(value)
if len(cnt) == 1 :
print(cnt)
print(max(cnt))
else :
cnt = cnt.most_common(2)
print(cnt)
if cnt[0][1] > cnt[1][1] :
print(cnt[0][0])
elif cnt[0][1] == cnt[1][1] :
print(cnt[1][0])
#범위
print(max(value) - min(value))
산술평균, 중앙값, 범위는 쉽게 풀 수 있었지만, 최빈값을 구하기가 어려웠다.
처음에는 배열.count(찾을 숫자)를 이용해서 풀었는데 시간초과가 나서 Counter를 사용했다.
(2108번 문제 질문을 찾아보니까 for문 안에 count를 쓰게되면 for문에서도 배열 내에 숫자를 하나씩 찾는데, count에서도 루프를 돌면서 찾게 되어 시간 초과가 발생한다고 한다. 링크)