页面加载中…
通过率 78% · 提交 18 · 通过 14
在元素大陆上,魔法议会召集了5家顶尖的魔法工坊(命名为X、Y、Z、W、Q),共同进行合作试炼。议会要求每两家工坊必须进行一次(共10次)。 每次交流会产生贡献值,双方的得分规则如下: * 若一方贡献值大于另一方:贡献高的一方得2分,贡献低的一方得0分; * 若双方贡献值相同:双方各得1分。 在10次交流结束后,议会将从5家工坊中评选出3家优秀工坊,评选规则依次为: 1. 总得分高者优先; 2. 总贡献值高者优先; 3. 高者优先(净贡献值 = 总贡献值 - 对方总贡献值); 4. 工坊名称。 请你编写程序,按照上述规则输出被选中的3家工坊的名称。
这类题属于华为可信认证科目一方向中「排序 / 可信」方向的高频题型,通常考察对「排序 / 可信」的建模能力与边界条件处理。掌握本题的解题思路后,可举一反三应对同类真题方向,稳步提升机考通过率。
提示:带虚线的词点一下有通俗解释。
输入共 10 行,每行包含两个整数 a b,表示一场魔能交流中双方的贡献值:
其中 0 <= a, b <= 9。
输出一个字符串,表示被选中的 3 家工坊的名称(按照排名顺序拼接)。
示例 1
输入示例
2 1 0 0 3 2 1 0 2 2 1 0 0 1 3 1 2 0 1 1
输出示例
XZY
根据输入,10 场交流结果如下表:
| 公司 | 总得分 | 总贡献值 | 对方总贡献值 | 净贡献值 |
|---|---|---|---|---|
| X | 2(胜Y)+1(平Z)+2(胜W)+2(胜Q)= 7 | 2+0+3+1 = 6 | 1+0+2+0 = 3 | 3 |
| Y | 0(负X)+1(平Z)+2(胜W)+0(负Q)= 3 | 1+2+1+0 = 4 | 2+2+0+1 = 5 | -1 |
| Z | 1(平X)+1(平Y)+2(胜W)+2(胜Q)= 6 | 0+2+3+2 = 7 | 0+2+1+0 = 3 | 4 |
| W | 0(负X)+0(负Y)+0(负Z)+1(平Q)= 1 | 2+0+1+1 = 4 | 3+1+3+1 = 8 | -4 |
| Q | 0(负X)+2(胜Y)+0(负Z)+1(平W)= 3 | 0+1+0+1 = 2 | 1+0+2+1 = 4 | -2 |
排序后结果为 "XZY"。
时间限制 1000 ms · 内存限制 128 MB
本平台为独立第三方培训机构,与华为技术有限公司无任何关联;课程的服务内容与权益以购买协议为准,学习效果因个人情况而异。「华为 OD」「华为可信」等仅为对岗位与考试方向的客观描述,相关商标归各自权利人所有。
登录后可查看你在本题的历史提交,以及每次的各用例通过情况。
© 2026 广州慕课网络科技有限公司 · 吴师兄学算法官网 版权所有