编程题:h240. 放文件
小华想用他的优盘拷贝 n 个文件,他的优盘的最大容纳空间为 m。
第 i 个文件所需占用的空间大小为 ai。
为了一次性拷贝所有文件,他可以将文件进行压缩。
已知,第 i 个文件经过压缩后,所占空间大小可以从 ai 变为 bi。
请问,他最少需要压缩多少个文件,才能使得优盘可以装下所有文件(即所有文件的所占空间之和不大于 m)。
### 输入格式:
第一行包含两个整数 n,m(1≤n≤10^5,1≤m≤10^9)。
接下来 n 行,每行包含两个整数 ai,bi(1≤ai<bi≤10^9 )。
### 输出格式:
如果无论如何都不能装下所有文件,则输出 -1。
否则,输出一个整数,表示最少所需压缩的文件个数。
### 输入样例:
in
4 21
10 8
7 4
3 1
5 4
### 输出样例:
out
2
答案:若无答案欢迎评论
第 i 个文件所需占用的空间大小为 ai。
为了一次性拷贝所有文件,他可以将文件进行压缩。
已知,第 i 个文件经过压缩后,所占空间大小可以从 ai 变为 bi。
请问,他最少需要压缩多少个文件,才能使得优盘可以装下所有文件(即所有文件的所占空间之和不大于 m)。
### 输入格式:
第一行包含两个整数 n,m(1≤n≤10^5,1≤m≤10^9)。
接下来 n 行,每行包含两个整数 ai,bi(1≤ai<bi≤10^9 )。
### 输出格式:
如果无论如何都不能装下所有文件,则输出 -1。
否则,输出一个整数,表示最少所需压缩的文件个数。
### 输入样例:
in
4 21
10 8
7 4
3 1
5 4
### 输出样例:
out
2
答案:若无答案欢迎评论