通过率 47% · 提交 173 · 通过 82
在神秘的魔法王国,巫师们参加了一场名为「法术对决」的竞技比赛,每位巫师都会获得一个。请计算所有巫师法术评分的,并返回法术评分等于中位数的巫师姓名列表。如果有多人符合要求,则输出。 中位数的定义如下: - 如果数据的个数是奇数,则中位数是排序后居中位置的那个数。 - 如果数据的个数是偶数,则中位数是排序后中间两个数中较小的那个数。
这类题属于华为可信认证科目一方向中「排序 / 可信」方向的高频题型,通常考察对「排序 / 可信」的建模能力与边界条件处理。掌握本题的解题思路后,可举一反三应对同类真题方向,稳步提升机考通过率。
提示:带虚线的词点一下有通俗解释。
第一行包含一个整数 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
本平台为独立第三方培训机构,与华为技术有限公司无任何关联;课程的服务内容与权益以购买协议为准,学习效果因个人情况而异。「华为 OD」「华为可信」等仅为对岗位与考试方向的客观描述,相关商标归各自权利人所有。
登录后可查看你在本题的历史提交,以及每次的各用例通过情况。
© 2026 广州慕课网络科技有限公司 · 吴师兄学算法官网 版权所有