AT_abc291_b [ABC291B] Trimmed Mean
题目描述
# [ABC291B] 修剪均值
[problemUrl]: https://atcoder.jp/contests/abc291/tasks/abc291_b
高橋君正参加体操比赛。
比赛中,$ 5N $ 位评委会各自对高橋君的表演打分,根据这些分数确定高橋君的得分如下:
- 从打分最高的人开始,取消 $ N $ 人的分数。
- 从打分最低的人开始,取消 $ N $ 人的分数。
- 将剩余的 $ 3N $ 人的平均分作为高橋君的得分。
更精确地说,以评委打出的分数的多重集合 $ S $ ($ |S|=5N $) 为基础,根据以下操作得到的就是高橋君的得分:
- 重复 $ N $ 次「从 $ S $ 中选择最大的元素(若有多个,取其中之一)并将其移出 $ S $」的操作。
- 重复 $ N $ 次「从 $ S $ 中选择最小的元素(若有多个,取其中之一)并将其移出 $ S $」的操作。
- 将 $ S $ 中剩余的 $ 3N $ 个元素的平均数作为高橋君的得分。
高橋君的表演得到的 $ i $ 位($ 1\leq\ i\leq\ 5N $)评委的分数是 $ X_i $ 分。请计算高橋君的得分。
输入格式
输入通过標準輸入给出,形式为:
> $ N $ $ X_1 $ $ X_2 $ $ \ldots $ $ X_{5N} $
输出格式
输出高橋君的得分。
注意,只要真值与输出值的绝对误差或相对误差不超过 $ 10^{-5} $,即被视为正确答案。
## 样例 #1
### 样例输入 #1
```
1
10 100 20 50 30
```
### 样例输出 #1
```
33.333333333333336
```
## 样例 #2
### 样例输入 #2
```
2
3 3 3 4 5 6 7 8 99 100
```
### 样例输出 #2
```
5.500000000000000
```
说明/提示
### 制約
- $ 1\leq\ N\leq\ 100 $
- $ 0\leq\ X_i\leq\ 100 $
- 输入均为整数
### 样例解释 #1
由于 $ N=1 $,因此取消分数最高和最低的人各 $ 1 $ 人。最高分是第 $ 2 $ 人 ($ 100 $ 分),最低分是第 $ 1 $ 人 ($ 10 $ 分),所以要取消它们。因此,最终的平均分为 $ \displaystyle\frac{20+50+30}{3}=33.333\cdots $。请注意,只要真值与输出值的绝对误差或相对误差不超过 $ 10^{-5} $,即被视为正确答案。
### 样例解释 #2
由于 $ N=2 $,因此取消分数最高和最低的人各 $ 2 $ 人。最高分是第 $ 10 $ 人 ($ 100 $ 分) 和第 $ 9 $ 人 ($ 99 $ 分),最低分是第 $ 1 $、$ 2 $、$ 3 $ 人 ($ 3 $ 分),所以要取消其中的 $ 2 $ 人。因此,答案是 $ \displaystyle\frac{3+4+5+6+7+8}{6}=5.5 $。注意,最低分的 $ 3 $ 人中哪 $ 2 $ 人被取消并不影响答案。