QOJ.ac

QOJ

実行時間制限: 1 s メモリ制限: 128 MB

#23525. 截尾平均数

統計

在体操、跳水等比赛中,曾经常出现一些裁判给自己喜欢的选手打高分、给不喜欢的选手打低分的情况。因此,如果把裁判评分的平均值作为选手得分,就可能不公平。为防止这种情况,会使用截尾平均数或缩尾平均数。例如,七名裁判给出的分数为 $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$。此时,截尾平均数 $(7,2)$ 是从这七个排好序的分数两端各去掉两个后,剩下的 $9.3$、$9.3$、$9.5$ 的平均值,即 $9.37$(在小数点后第三位四舍五入)。缩尾平均数 $(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$ 到 $10$ 的实数,给到小数点后一位。

输出格式

第一行输出截尾平均数 $(N,K)$,第二行输出缩尾平均数 $(N,K)$,均在小数点后第三位四舍五入,保留两位小数。例如,结果为 $9.667$ 时输出 $9.67$,为 $5$ 时输出 $5.00$,为 $5.5$ 时输出 $5.50$。

样例

输入格式 1

7 2
9.3
9.5
9.6
9.8
9.1
5.0
9.3

输出格式 1

9.37
9.39

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.