#include <bits/stdc++.h>
using namespace std;
int a[100010];
int v[100010];
int main()
{
int n, d;
cin >> n >> d;
v[1] = 0;
for (int i = 2; i <= n; i ++)
{
cin >> v[i];
v[i] = v[i - 1] + v[i];
}
for (int j = 1; j <= n; j ++)
cin >> a[j];
a[n] = 0;
int k = a[1], ans = 0, nxt = 1;
a[n + 1] = -1;
for (int i = 2; i <= n + 1; i ++)
{
if (a[i] < k)
{
ans += (int)ceil(1.0 * (v[i] - v[nxt]) / d) * a[i];
nxt = i;
}
}
cout << ans;
return 0;
}