7 条题解
-
-2
Python
m, n = map(int, input().split()) counter = { name: int(stars) for name, stars in (input().split() for _ in range(m)) } # 输入姓名+星数 newdt = sorted(counter.items(), key=lambda item: (-item[1], item[0])) # 根据星数和姓名排序 pre_stars = newdt[0][1] # 记录同排名的星数 pre_rank = 1 # 记录同排名 rank = 1 # 记录排名 sum = 0 for (name, stars) in newdt: if stars == pre_stars: print(f"{pre_rank}:{name}") else: print(f"{rank}:{name}") pre_stars = stars pre_rank = rank if n >= pre_rank: sum += 1 rank += 1 print(sum)
信息
- ID
- 736
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- 递交数
- 603
- 已通过
- 177
- 上传者