#5744. 文件存储
文件存储
题目描述
Piggy 是一只可爱的小猪,它喜欢收集各种有趣的数据和图片。今天,它想将 n 个数据文件拷贝到它的优盘中,每个文件的原始大小为 。为了一次性拷贝所有文件,Piggy 可以将文件进行压缩,将文件大小从 变为 。
Piggy 的优盘最大容纳空间为 m ,请问它最少需要压缩多少个文件,才能将所有文件拷贝到优盘中。
请你编写一个程序,输入 n 、m 和 n 个文件的大小信息,输出最少需要压缩多少个文件。
输入
第一行包含两个整数 n 和 m 。
接下来 n 行,每行包含两个整数 和 ,表示第 i 个文件的原始大小和压缩后的大小。
输出
如果无论如何都不能装下所有文件,则输出 -1。
否则,输出一个整数,表示最少所需压缩的文件个数。
样例
输入复制
4 21
10 8
7 4
3 1
5 4
输出复制
2
输入复制
4 16
10 8
7 4
3 1
5 4
输出复制
-1
说明
【数据范围】
前3个测试点满足1≤n≤4。
所有测试点满足 1≤n≤,1≤m≤,1≤,≤,>。
【样例 1 解释】 10+7+3+5=25 大于容量 21,所以需要压缩。 选择原始容量 7 的压缩成 4 ,再选择原始容量 10 的压缩成 8 ,此时 8+4+3+5= 20,则能够拷贝到优盘。
【样例 2 解释】
即使每一个文件都进行压缩,总容量为 8+4+1+4=17 大于 16,压缩后无法拷贝到优盘,所以输出 -1。