华为OD机试真题-智能成绩表-2023年OD统一考试(C卷)---Python3--开源

题目:

考察内容:

sort(双排序)+ if + dict(keys;items())

代码:

python 复制代码
"""
analyze:

input:
int n 学生人数; int m 科目数量
科目名称(不重复)
人名(不会重名) + 科目成绩
。。。。
。。。。
排名的科目

output:
按成绩排序的名字,空格隔开(成绩相同,按照学生姓名字典排序)
eg:
3 2
yuwen shuxue
fangfang 95 90
xiaohua 88 95
mimmim 100 95
shuxue

3 2
yuwen shuxue
fangfang 95 90
xiaohua 88 95
mimmim 100 82
zhongfen

way

"""

while True:
    n, m = map(int, input().split())
    subject = input().split()
    student_score = dict()
    for _ in range(n):
        temp = input().split()
        student_score.update({temp[0]: temp[1:]})
    sort_subject = input()
    # print(n, m)
    # print(subject)
    # print(student_score)
    # print(sort_subject)
    if sort_subject in subject:
        index = subject.index(sort_subject)
        res = sorted(student_score.items(), key=lambda x: (-int(x[1][index]), x[0]))
    else:
        # 按照总分进行排序
        res = sorted(student_score.items(), key=lambda x: (-sum(map(int, x[1])), x[0]))
    print(" ".join(dict(res).keys()))
相关推荐
我命由我1234542 分钟前
Spring Boot 自定义日志打印(日志级别、logback-spring.xml 文件、自定义日志打印解读)
java·开发语言·jvm·spring boot·spring·java-ee·logback
徐小黑ACG2 小时前
GO语言 使用protobuf
开发语言·后端·golang·protobuf
0白露3 小时前
Apifox Helper 与 Swagger3 区别
开发语言
Tanecious.4 小时前
机器视觉--python基础语法
开发语言·python
叠叠乐4 小时前
rust Send Sync 以及对象安全和对象不安全
开发语言·安全·rust
Tttian6225 小时前
Python办公自动化(3)对Excel的操作
开发语言·python·excel
独好紫罗兰6 小时前
洛谷题单2-P5713 【深基3.例5】洛谷团队系统-python-流程图重构
开发语言·python·算法
闪电麦坤957 小时前
C#:base 关键字
开发语言·c#
Mason Lin7 小时前
2025年3月29日(matlab -ss -lti)
开发语言·matlab
DREAM.ZL8 小时前
基于python的电影数据分析及可视化系统
开发语言·python·数据分析