1、排序刚举行的万米长跑活动中有 N 个人跑完了全程所用的时间都不相同。颁奖时为了增加趣味性随机抽了一个数K要奖励第 K 名一双跑鞋。现在组委会提供给你 N 个人的姓名、成绩用时单位是秒的比赛数据文件请你编程快速输出第 K 名的姓名。比赛数据在文件 recordtxt 中:
假设文件 record.txt 的格式如下:
姓名1 成绩1
姓名2 成绩2
...
姓名N 成绩N
我们可以读取文件,将姓名和成绩存储在一个列表中,并根据成绩进行排序。然后输出第 K 名的姓名。
下面是一个实现这个功能的Python代码示例:
def find_kth_name(file_path, k):
# 读取文件
with open(file_path, 'r') as file:
lines = file.readlines()
# 存储姓名和成绩的列表
records = []
# 解析文件内容
for line in lines:
name, score = line.strip().split()
records.append((name, int(score)))
# 根据成绩进行排序
records.sort(key=lambda x: x[1])
# 输出第 K 名的姓名
if k <= len(records):
return records[k-1][0]
else:
return "第 K 名不存在"
# 测试示例
file_path = "record.txt"
k = 3
result = find_kth_name(file_path, k)
print(f"第 {k} 名的姓名是:{result}")
注意:需要将文件路径和要寻找的第 K 名作为参数传递给函数 find_kth_name()
原文地址: https://www.cveoy.top/t/topic/iHMF 著作权归作者所有。请勿转载和采集!