测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A3511. 歌曲压缩

编程题 入门
知识点

题目描述

Ivan的电话里有n首歌。第i首歌的大小是ai字节。Ivan还有一个闪存驱动器,最多可容纳M字节。


最初,他的闪存驱动器是空的。


伊凡想把N首歌全部复制到闪存驱动器。


他能压缩歌曲。如果他压缩第i首歌,第i首歌的大小将从ai减少到bi字节(bi <ai)。


Ivan可以压缩歌曲的任何子集(可能是空的),并将所有歌曲复制到他的闪存驱动器(如果它们的大小总和最多为m)。


他可以压缩歌曲的任何子集(不一定是连续的)。


Ivan希望找到他需要压缩的最少歌曲数量,以使所有歌曲都适

输入格式

输入的第一行包含两个整数n (Ivan手机上的歌曲数)和m(Ivan闪存驱动器的容量)(1≤n≤105,1≤m≤109)


接下来的n行包含两个整数:第i行包含两个整数ai和bi(1≤ai,bi≤109,ai>bi)-第i首歌的初始大小和压缩后第i首歌的大小。

输出格式

如果无法以所有歌曲都适合闪存驱动器的方式压缩歌曲的子集,请打印“-1”。否则,打印要压缩的最少歌曲数。

输入输出样例

输入 #1
4 21
10 8
7 4
3 1
5 4
输出 #1
2
上一题 去做题 下一题