URI Online Judge | 3027
# Workout Plan

**Timelimit: 1**

By Microsoft Andorra

Alan decided to get in shape for the summer, so he created a precise workout plan to follow. His plan is to go to a different gym every day during the next **N** days and lift **X[i]** grams on day **i**. In order to improve his workout performance at the gym, he can buy exactly one pre-workout drink at the gym he is currently in and it will improve his performance by **A** grams permanently and immediately. In different gyms these pre-workout drinks can cost different amounts **C[i]** because of the taste and the gym’s location but its permanent workout gains are the same.

Before the first day of starting his workout plan, Alan knows he can lift a maximum of **K** grams. Help Alan spend a minimum total amount of money in order to reach his workout plan. If there is no way for him to complete his workout plan successfully output −1.

The first one contains two integer numbers, integers **N** (1 ≤ **N** ≤ 10^{5} ) and **K** (1 ≤ **K** ≤ 10^{5} ) – representing number of days in the workout plan and how many grams he can lift before starting his workout plan respectively. The second line contains **N** integer numbers **X[i]** (1 ≤ **X[i]** ≤ 10^{9} ) separated by a single space representing how many grams Alan wants to lift on day **i**. The third line contains one integer number **A** (1 ≤ **A** ≤ 10^{9} ) representing permanent performance gains from a single drink. The last line contains **N** integer numbers **C[i]** (1 ≤ **C[i]** ≤ 10^{9} ) , representing cost of performance booster drink in the gym he

visits on day **i**.

One integer number representing minimal money spent to finish his workout plan. If he cannot finish his

workout plan, output -1.

Input Samples | Output Samples |

5 10000 |
5 |

5 10000 |
-1 |