소들이 초등 통계학과에 입학했습니다.
그리고 그 소들은 지금 통계학 과제를 하면서 어려움을 겪고 있습니다! 여러분들이 도와주세요.
(1 <= N <= 500)개의 숫자 집합 (-5,000 <= <= 5,000)이 주어졌을 때, 두 가지 통계치를 계산 해주세요.
두 통계치 모두 공식 답변과의 차이가 0.002 이내라면 답으로 인정합니다.
총 두 개의 줄에 걸쳐 입력을 받습니다.
총 두 개의 줄에 걸쳐 출력을 합니다.
간단한 sorting + 통계 문제.
한국어 문제였다면 실버5가 아니라 브론즈1이지 않았을까...
오름차 순으로 정렬해준 후, 중앙값과 평균을 문제에서 제시해주는 대로 계산 후 포맷(6자릿수)에 맞게 출력해주면 된다.
import sys
n = int(sys.stdin.readline().rstrip())
num = []
for i in range(n):
num.append(int(sys.stdin.readline().rstrip()))
num.sort()
print("{:.6f}".format(sum(num) / n))
if n % 2 == 0:
if n > 2 :
mid = n // 2
print("{:.6f}".format((num[mid-1]+num[mid])/2))
else:
mid = n // 2
print("{:.6f}".format((num[0]+num[1])/2))
else:
mid = (n // 2)
print("{:.6f}".format(num[mid]))