#include<bits/stdc++.h>
using namespace std;
long long n,d,v[1000005],a[1000005],p=1,l=1;
double s=0;
long long ans=0;
int main(){
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
cin>>n>>d;
for(int i=1;i<n;i++) cin>>v[i];
for(int i=1;i<=n;i++) cin>>a[i];
a[n]=-1e9;
while(p<n){
if(a[p]>a[p+1]){
int x=ceil(1.00000*v[p]/d-s);
ans+=x*a[p];
s=x-(1.00000*v[p]/d-s);
}else{
for(int i=p;i<n;i++){
if(a[p]>a[i+1]){
long long c1=0;
for(int j=p;j<=i;j++){
c1+=v[i];
}
ans+=ceil(1.00000*c1/d-s)*a[p];
s=ceil(1.00000*c1/d-s)-(1.00000*c1/d-s);
p=i;
break;
}
}
}
p++;
}
cout<<ans;
return 0;
}