#A6012. 投资理财
投资理财
题目背景
小杨手上有一笔资金 C 元,看中了 n 款理财产品。第 i 款产品的最高可投金额是 w_i 元,把钱全部投满能带来 v_i 元收益;钱也可以只投一部分,收益按投入比例计算。
小杨想把资金分配到这些产品上,投入的总额不超过自己的资金,让总收益尽量高。
题目描述
给定 n 款产品的可投上限 w_i 与满额收益 v_i,以及总资金 C。可以给每款产品投入任意金额(不超过 w_i,也可以为零),使总投入不超过 C,求能获得的最大总收益,保留两位小数。
输入格式
第一行两个整数 n, C。
接下来 n 行,每行两个整数 w, v,表示一款产品的可投上限与满额收益。
输出格式
一个实数,表示最大总收益,保留两位小数。
输入输出样例
3 100
50 40
30 30
20 10
80.00
样例 1 解释
先投满第 2 款(投入 30,收益 30),再投满第 1 款(投入 50,收益 40),剩下的 20 元正好投满第 3 款(收益 10)。总投入 100 元,总收益 80 元;其他分配都达不到 80。
说明/提示
- 1 ≤ n ≤ 10^5 - 1 ≤ w_i ≤ 10^6 - 1 ≤ v_i ≤ 10^6 - 1 ≤ C ≤ 10^9 - 每款产品可只投一部分,收益按投入比例计算