a,b=map(int,input().split())
#读入成二维数组
m=[]#存读进来的数据
res=[]#存结果for i inrange(a):
row=list(map(int,input().split()))
res.append(row[0])#把刚开始最大的攻击点加入列表
m.append(row)#读入每行到mfor i inrange(a):
for j inrange(m[i][0]//m[i][1]):
res.append(m[i][0]-m[i][1])#把更新后的攻击点数加入res列表
m[i][0]=m[i][0]-m[i][1]#每一行的第一个减去第二个元素就是更新后的攻击点数#排序
res.sort(reverse=True)#对列表按降序排序
s=0for i inrange(b):#对列表的前b个数求和
s+=res[i]
print(s)
32分
题解:优化
n, m = map(int, input().split())#读入n,m表示n行,升级次数m
res = []#列表for _ inrange(n):#循环每一行
a, b = map(int, input().split())#读入每一行的两个数while a > 0:#当攻击力是大于0时
res.append(a)#把当前的攻击力加入列表
a -= b#更新攻击力,下一次加攻击力时要在a的基础上减去b
res.sort(reverse=True)#对列表按降序排序
ans = sum(res[:m])#对列表的前m个数求和print(ans)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人