问题3596--2015元旦赛--买糖果3596: 2015元旦赛--买糖果
时间限制: 1 Sec 内存限制: 512 MB
提交: 0 解决: 0
[提交] [状态] [讨论版] [命题人:]题目描述
要过春节了,家里总要准备点糖果招待亲朋好友。现在市场上有N (1 <= N <= 100,000)种不同类型的糖果,每种糖果数量无限多。第i种糖果的每颗的价格是P_i (1 <= P_i <= 10^18) ,现在有C_i (1 <= C_i <= 10^18)个你的朋友想吃这种糖果。
现在给你B (1 <= B <= 10^18)元给买糖果。你最多可以给多少朋友买到糖果?所有的朋友都只吃他喜欢的类型的一颗糖果。
例如:现在有50块钱,有5种不同类型的糖果:
糖果类型 每颗糖果价格 想吃该类型糖果的朋友数量
1 5 3
2 1 1
3 10 4
4 7 2
5 60 1
显然,你不能购买第5种类型的糖果,因为你的钱不够。
下面的购买方案是最优的:
买1颗类型2的糖果,
买3颗类型1的糖果,
买2颗类型4的糖果,
买2颗类型3的糖果。
总共花费1+3*5+2*7+2*10=50,这样,你最多满足1+3+2+2=8个朋友的糖果需求。
输入
第一行:两个用空格隔开的整数N和B
第2..N+1行:每行两个整数:P_i和C_i
输出
一行:一个整数,表示最多可以让多少朋友吃到糖果.
样例输入
5 50
5 3
1 1
10 4
7 2
60 1
样例输出
8
来源/分类
[提交] [状态]