在小慕的项目中,他正在组织一场名为「代码对决」的编程挑战赛,每位参赛者会获得一个算法评分。请计算所有参赛者算法评分的,并返回算法评分等于中位数的参赛者姓名列表。如果有多人符合要求,则输出。 中位数的定义如下: - 如果数据的个数是奇数,则中位数是排序后居中位置的那个数。 - 如果数据的个数是偶数,则中位数是排序后中间两个数中较小的那个数。
提示:带虚线的词点一下有通俗解释。
输入描述
第一行包含一个整数 `num`,表示巫师的人数,满足 `1 <= num <= 100`。 接下来的 `num` 行,每行包含两个部分: - `name`(字符串),表示巫师的名字,仅由英文字母和数字组成,长度在 `[1,15]` 之间,且不重复。 - `score`(整数),表示巫师的法术评分,范围为 `[0,100]`。
输出描述
输出分数等于**中位数**的巫师姓名列表,巫师之间以**单个空格**分隔,**按照输入顺序的逆序**排列。
示例
示例 1
输入
5 Mage02 34 Sorcerer01 32 Wizard03 34 Enchanter04 56 Warlock05 79
输出
Wizard03 Mage02
说明:巫师的法术评分排序后为 `[32, 34, 34, 56, 79]`,中位数是 `34`。 评分等于 `34` 的巫师有两人:`Mage02` 和 `Wizard03`,按照输入顺序的逆序排列,输出 `Wizard03 Mage02`。
示例 2
输入
4 Apprentice01 10 Invoker1b 10 Conjurer2a 9 Summoner02 9
输出
Summoner02 Conjurer2a
说明:巫师的法术评分排序后为 `[9, 9, 10, 10]`,中位数是 `9`。 评分等于 `9` 的巫师有两人:`Conjurer2a` 和 `Summoner02`,按照输入顺序的逆序排列,输出 `Summoner02 Conjurer2a`。
时间限制 1000 ms · 内存限制 128 MB