#A6014. 仓库装箱

仓库装箱

题目背景

仓库要往货舱里装 n 种散货。第 i 种散货一整批占 w_i 立方米舱位、货值 v_i 元。散货可以任意分割——比如只装一批的六成,装多少就拿到对应比例的货值。

货舱的总容积是 C 立方米。管理员想让装进货舱的散货总货值尽量高。

题目描述

给定 n 种散货的体积 w_i 与整批货值 v_i,以及货舱容积 C。可以装载每种散货任意体积(不超过 w_i,也可以一点不装),使总体积不超过 C,求能装到的最大总货值,保留两位小数。

输入格式

第一行两个整数 n, C。

接下来 n 行,每行两个整数 w, v,表示一种散货的体积与整批货值。

输出格式

一个实数,表示最大总货值,保留两位小数。

输入输出样例

4 11
5 25
4 12
3 6
2 7
44.00

样例 1 解释

先装体积 5 的整批(货值 25),再装体积 2 的整批(货值 7),剩下 4 体积正好装完体积 4 的那批(货值 12)。总体积 11,总货值 44;其他装法都达不到 44。

说明/提示

- 1 ≤ n ≤ 10^5 - 1 ≤ w_i ≤ 10^6 - 1 ≤ v_i ≤ 10^6 - 1 ≤ C ≤ 10^9 - 散货可任意分割,货值按体积等比计算