#include<bits/stdc++.h>
using namespace std;
#define int long long
long long dis[1000005],p[1000005];
signed main(){
int n,d;
long long ans=0;
cin>>n>>d;
for(int i=1;i<n;i++) cin>>dis[i];
for(int i=1;i<=n;i++) cin>>p[i];
int minx=1e6,oil;
long long ex=0;
for(int i=1;i<n;i++){
minx=min(minx,p[i]);
if(ex>=dis[i]){
ex-=dis[i];
continue;
}
ex=dis[i]-ex;
oil=ceil(1.0*ex/d);
ex=oil*d-dis[i];
ans+=oil*minx;
}
cout<<ans;
return 0;
}