절사평균과 보정평균

아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

체조나 다이빙 같은 경기에서는 일부 심판이 자신이 좋아하는 선수에게는 지나치게 높은 점수를, 싫어하는 선수에게는 지나치게 낮은 점수를 주는 일이 종종 있다. 이런 점수까지 모두 포함하여 단순 평균을 내면 결과가 불공정해질 수 있다. 이를 막기 위해 절사평균보정평균을 사용한다.

예를 들어 심판 일곱 명이 다음과 같은 점수를 주었다고 하자.

9.3, 9.5, 9.6, 9.8, 9.1, 5.0, 9.3

이 점수들의 합은 61.6이므로 단순 평균은 8.8이다. 그러나 이 값은 한 심판이 유독 낮은 5.0을 준 탓에 크게 낮아진 것으로, 선수는 매우 불공정하다고 느낄 것이다.

위 점수를 작은 값부터 큰 값 순으로 정렬하면 다음과 같다.

5.0, 9.1, 9.3, 9.3, 9.5, 9.6, 9.8

  • 절사평균(N, K): 정렬된 $N$개의 점수에서 양쪽 끝의 점수를 각각 $K$개씩 버리고, 남은 $N - 2K$개의 평균을 구한다. 위 예에서 절사평균(7, 2)는 양 끝에서 두 개씩 제외한 9.3, 9.3, 9.5의 평균이므로 9.37이다.
  • 보정평균(N, K): 정렬된 점수에서 양쪽 끝의 $K$개를 버리는 대신 남은 값 중 가장 가까운 값으로 바꾼다. 즉 가장 작은 쪽 $K$개는 $K+1$번째로 작은 점수로, 가장 큰 쪽 $K$개는 $K+1$번째로 큰 점수로 대체한 뒤, 이렇게 얻은 $N$개 전체의 평균을 구한다. 위 예에서 보정평균(7, 2)는 9.3, 9.3, 9.3, 9.3, 9.5, 9.5, 9.5의 평균이므로 9.39이다.

$N$개의 점수와 양쪽 끝에서 제외(또는 대체)하는 개수 $K$가 주어질 때, 절사평균(N, K)와 보정평균(N, K)를 계산하는 프로그램을 작성하시오.

입력

첫째 줄에 점수의 총 개수 $N$과 양쪽 끝에서 제외하는 개수 $K$가 공백을 사이에 두고 주어진다. $N$은 3 이상 100,000 이하의 자연수이고, $K$는 0 이상 $(N/2) - 1$ 이하의 정수이다.

이어지는 $N$개의 줄에는 각 심판이 준 점수가 한 줄에 하나씩 주어진다. 각 점수는 0.0 이상 10.0 이하의 실수이며 소수점 첫째 자리까지 주어진다.

출력

첫째 줄에 절사평균(N, K)를, 둘째 줄에 보정평균(N, K)를 출력한다. 두 값 모두 소수점 셋째 자리에서 반올림하여 둘째 자리까지 나타낸다.

예를 들어 결과가 9.667이면 9.67로, 5이면 5.00으로, 5.5이면 5.50으로 출력한다.