Description
FJ决定进行一次跨国旅行。为了不让他的奶牛们感到被冷落,他决定租一辆大卡车把奶牛们都带上。卡车有一个很大的油箱,可以装下G(1≤G≤10^6)个单位的油, 但是卡车的耗油也很大,每一个单位的行程卡车就要消耗一个单位的油。FJ的整个旅行一共有D个单位的行程(1≤D≤10^9)。
因为FJ知道他旅途中可能需要中途停下给卡车加油,所以他列出了沿途中的N个加油站(1≤N≤50000),对于第i个加油站,他记录了加油站与起点的距离X_i(0≤X_i≤D),以及这个加油站每单位油的价格Y_i(1≤Y_i≤10^6)。
给出上述的所有信息,以及FJ在旅行开始时的油箱油量B(0≤B≤D),请计算出FJ到达目的地时花费的燃油费用的最小值。如果FJ无法到达旅途的终点,那么请输出-1。本题的答案可能无法使用32位整数储存。
Input
第1行: 四个整数: N,G,B,D
接下来N行: 每一行都有两个整数X_i与Y_i,描述第i个加油站的信息
Output
一个整数,如果FJ无法到达旅途的终点,那么输出-1,否则输出FJ到达目的地时花费的燃油费用的最小值。
4 10 3 17
2 40
9 15
5 7
10 12
HINT
【样例说明】
卡车开了2个单位的距离,然后停下加了2个单位的油(要花费40 x 2),这样他就可以到到位置5,在此处把油箱加满了油(要花费7 x 10)。再向前走5个单位,到位置10,又加2个单位的油(花费12 x 2)。最后一直走到终点。此时总花费是174.