#P2209. [USACO13OPEN] Fuel Economy S

[USACO13OPEN] Fuel Economy S

题目描述

Farmer John 决定去一次跨国旅游度假。为了不让他的奶牛们感到被抛弃,他决定租一辆大卡车来带他的奶牛们一起旅行。

这辆卡车有一个很大的油箱,可以装下 GG 个单位的油(1G1061 \le G \le {10}^6),不幸的是,卡车的耗油量也很大,卡车每运动一个单位的距离,就要消耗一个单位的油。Farmer John 要在他的旅程中走 DD 个单位的距离(1D1091 \le D \le {10}^9)。

因为 FJ 直到他可能要几次在旅途中停下,给油箱加油,所以他把在旅途沿路上的 NN 个加油站的记录做成了表格。对于第 ii 个加油站,他记录了加油站与起点的距离 XiX_i0XiD0 \le X_i \le D),以及加油站中每单位油的价格 YiY_i1Yi1061 \le Y_i \le {10}^6)。

已知以上所给的信息,以及 FJ 在路途开始时拥有的燃油的数量 BB0BD0 \le B \le D),请计算出 FJ 到达目的地时花费的油费用的最小值。如果 FJ 无法到达旅途的终点,那么请输出 -1。本题的答案可能无法使用 32 位整数储存。

输入格式

第一行: 四个整数:N,G,B,DN, G, B, D

接下来 NN 行:每一行都有两个整数 XiX_iYiY_i,意义如上所述。

输出格式

一个整数,如果 FJ 无法到达旅途的终点,那么输出 -1,否则输出 FJ 到达目的地时花费的油费用的最小值。

4 10 3 17
2 40
9 15
5 7
10 12
174

提示

样例解释:FJ 先移动 22 个单位,然后停下购买 22 个单位的油(要花费 40×240 \times 2)。然后一直前进到距离起点 55 个单位的地方,此时油箱为空。这时向油箱里加满油(要花费 7×107 \times 10)。再向前走 55 个单位,加 22 个单位的油(花费 12×212 \times 2)。最后一直走到终点。此时总花费是 174174