解题思路:跟金银岛一样,https://blog.dotcpp.com/a/98826
注意事项:
参考代码:
n,w = map(int,input().split()) gi = [] # 重量 pi = [] # 直接存单价不存总价,float for _ in range(n): x,y = map(int,input().split()) gi.append(x) pi.append(y/x) value = 0 while w != 0 : if len(pi) == 0: break maxprice = max(pi) maxindex = pi.index(maxprice) maxweight = gi[maxindex] if w - maxweight >= 0 : w -= maxweight value += maxweight * maxprice pi.pop(maxindex) gi.pop(maxindex) else: value += w * maxprice w = 0 print('{:.1f}'.format(value))
0.0分
1 人评分
C语言训练-自由落体问题 (C语言代码)浏览:1736 |
C语言训练-排序问题<1> (C语言代码)浏览:599 |
拆分位数 (C语言代码)浏览:1327 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:599 |
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:1419 |
C语言程序设计教程(第三版)课后习题7.5 (C语言代码)浏览:853 |
C语言训练-计算t=1+1/2+1/3+...+1/n (C语言代码)浏览:904 |
WU-判定字符位置 (C++代码)浏览:1400 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:798 |
【魔板】 (C++代码)(时间超限,希望会的帮我改正一下)浏览:740 |