解题思路:
贪心加排序,可得将货物的平均价格作为排序的根据从大到下排序,因为求的是最大值。
参考代码:
n,w = map(int,input().split()) nums = [] for _ in range(n): a,b = map(int,input().split()) nums.append([a,b,b/a]) nums = sorted(nums,key=lambda nums:nums[2],reverse=True) sum = 0.0 for num in nums: if num[0]>=w: sum += w*num[2] break else: sum += num[1] w -= num[0] print("%.1f"%(sum))
0.0分
1 人评分