#AG0401. 光头强的加油

光头强的加油

题目描述

光头强驾驶一辆卡车,冒险深入丛林探险。作为一个技术很烂的的司机,光头强不幸地磕到了底盘,更不幸的是,油箱被刺穿了。卡车现在每行驶一单位距离就消耗一单位燃油。

为了修理卡车,光头强需要沿着一条长长的公路开到最近的城镇(距离不超过 10000001000000 个单位)。在这条道路沿途,有 N(1N10000)N(1≤N≤10000) 个加油站,光头强可以停下来获取额外的燃料(每个站有 11001…100 单位)。

丛林里有很多黑心加油站,因此,光头强希望在前往城镇的途中尽可能少地停站加油,以避免被打劫。幸运的是,他的卡车上的油箱容量非常大,可以将其容量视为无限。卡车目前距离城镇 LL 单位,燃料为 P(1P10000)P(1≤P≤10000) 单位。

请找出到达城镇所需的最少停留次数,或者如果光头强根本无法到达城镇。

输入描述

11 行:单个整数,NN

2..N+12..N+1 行:每行包含两个空格分隔的整数,描述加油站:第一个整数是从城镇到加油站的距离;第二个是停车时可用的燃油量。

N+2N+2 行:两个空格分隔的整数,LLPP

输出描述

11 行:一个整数,给出到达城镇所需的最少加油站数。如果无法到达城镇,输出 -1

4
4 4
5 2
11 5
15 10
25 10
2

提示

卡车距离城镇 2525 个单位;这辆卡车有 1010 个单位的燃料。沿着道路,距离城镇 4,5,114,5,111515 处有 44 个加油站(因此,距离卡车 21,20,1421,20,141010 单位)。这些加油站可分别提供多达 4,2,54,2,51010 个单位的燃油。

驾驶 1010 单位,停下来再获取 1010 单位燃油,再驾驶 44 单位,停车再获取 55 辆燃油,然后开车到镇上。