快放寒假了,虽然时间还早,但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
说明
JAJA_Xin可以压缩第一和第二个袋子,因此在这些压缩之后,大小之和将2+4+4=10≤10。请注意,压缩任何单独一个袋子不足以把所有行李都装进行李箱(例如,压缩第三个袋子,大小之和5+6+3=14>10)
示例2
说明
JAJA_Xin压缩所有的袋子,大小之和将3+4+2=9>8,无法装进行李箱。