#include<bits/stdc++.h>
#define int long long
using namespace std;
int n, a[100010], v[100010], d, ans;
signed main(){
cin >> n >> d;
for(int i = 1;i <= n - 1;i++){
cin >> v[i];
}
for(int i = 1;i <= n;i++){
cin >> a[i];
}
int minn = a[1];
for(int i = 1;i <= n - 1;i++){
int w = v[i] / d + 1;
if(v[i] % d == 0) w--;
if(a[i] < minn) minn = a[i];
ans += w * minn;
v[i + 1] -= (w * d - v[i]);
}
cout << ans;
}
感觉没啥错,考试时大样例也过了,但不对