解题思路:直接排序求和
注意事项:
参考代码:
n = int(input())
dp = list([] for _ in range(10)) # 定义 保存对应数字及代价
le = list(0 for _ in range(10)) # 定义 保存每个数字输入的次数
for i in range(n):
x, y = map(int, input().split())
dp[x].append(y) # 保存对应数字及代价
le[x] = le[x] + 1 # 对应数字输入次数 +1
ans = 0
for j in range(10):
if le[j] > n//10:
dp[j].sort(reverse=True)
del dp[j][:n//10]
ans += sum(dp[j]) # 求和
print(ans)
0.0分
8 人评分
输出九九乘法表 (C语言代码)浏览:1560 |
不容易系列 (C语言代码)浏览:661 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:529 |
C语言程序设计教程(第三版)课后习题7.5 (C语言代码)浏览:546 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:277 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:465 |
C语言程序设计教程(第三版)课后习题7.5 (C语言代码)浏览:524 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:485 |
C语言程序设计教程(第三版)课后习题8.2 (C语言代码)浏览:5232 |
WU-输出正反三角形 (C++代码)浏览:1021 |