L-JAJA_Xin的小心思
题号:NC200617
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

    快放寒假了,虽然时间还早,但JAJA_Xin已经准备着回家了。他只有一个行李箱,行李箱的容积为m。但是他的行李又很多,所以他去网购了n个压缩袋,并把他的行李分装成了n个袋子,第i个装好的袋子有初始体积ai,压缩后的体积为bi,但JAJA_Xin比较懒,他希望能尽量少压缩几个袋子就把所有行李装进行李箱,现已知所有的ai和bi,他至少要压缩几个袋子才能把行李装进行李箱?
    一顿sao操作之后,他算好了要压缩几个袋子,jx队长从背后拍了一下他的肩:“怎么,想溜了?乖乖留下集训吧

输入描述:

多测试用例,保证 ∑n≤107
每组用例的第一行包含两个整数n和m(1≤n≤105,1≤m≤109)。
接下来输入有n行,第i行有两个整数ai和bi(1≤ai,bi≤109, bi<ai)。

输出描述:

请输出需要压缩几个袋子。
如果无法装进行李箱,请输出-1。
示例1

输入

复制
3 10
5 2
6 4
4 3

输出

复制
2

说明

JAJA_Xin可以压缩第一和第二个袋子,因此在这些压缩之后,大小之和将2+4+4=10≤10。请注意,压缩任何单独一个袋子不足以把所有行李都装进行李箱(例如,压缩第三个袋子,大小之和5+6+3=14>10)
示例2

输入

复制
3 8
5 3
6 4
4 2

输出

复制
-1

说明

JAJA_Xin压缩所有的袋子,大小之和将3+4+2=9>8,无法装进行李箱。