2866 - 聪明的木匠

题目描述

小镇上有一条笔直的街道,街道的每个整数点上住着一户人家,从位置 0 开始,到位置 1018 结束。

在街道的位置 0 处住着本镇唯一的木匠,他为人善良、勤劳朴实,而且很聪明,镇上的家家户户,只要家具、木器坏了,都会打电话找木匠来修。

一天木匠接到了 N 户人家的维修电话。他工整的在自己的本子上整理出了要去维修的每户人家的位置 X_i,并根据来电描述的损坏情况评估了在每户人家维修所需要的时间 T_i

木匠在街道上行走,每走一个单位的距离,需要消耗一个单位的时间,从第 i 户人家的位置 X_i 走到 第 j 户人家的位置 X_j,他所需要的行走时间为 |X_i - X_j|

木匠看了看手表,估算了一下,现在出发到天黑只有 M 个单位的时间了,他必须在天黑之前尽可能给更多的人家维修,维修完最后一户人家,主人会热情的招待木匠住在他家,一起吃饭。因此你不用考虑木匠回家的时间,只需要让木匠在 M 个单位的时间内,尽可能帮助更多的人家完成维修工作。

请编程计算出,如果木匠选择部分人家来维修,最多能完成多少户人家的维修工作。

输入

1 行读入 2 个整数 NM,含义如题所述。

接下来 N 行,每行读入 2 个整数 X_iT_i 表示第 i 户打维修电话人家的位置,及木匠评估为该户维修所需的时间。

输出

输出聪明的木匠,最多能够维修的户数。

样例

输入

2 10
5 5
1 100

输出

1
说明

样例 1 描述

木匠接到 2 家的电话,他有 10 个单位的时间,第 1 户人家位于位置 5 ,维修时间为 5 ,木匠可以完成该户的维修工作。

2 户人家位于位置 1,虽然木匠在去第 1 户人家的路上会经过该位置,但这户人家的维修时间太长,需要 100 个单位的时间,因此木匠今天不会为该户维修。

数据范围

对于 30\% 的数据, n ≤ 20

对于 60\% 的数据, n ≤ 1000

对于 100\% 的数据,1 ≤ n ≤ 10^51 ≤ M ≤ 10180 ≤ X_i ≤ 10180 ≤ T_i ≤ 10^9

来源

东方博宜OJ

标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 272
通过人数 70
金币数量 2 枚
难度 基础


上一题 下一题