#include <bits/stdc++.h>
using namespace std;
const int N=1e5;
long long n,d,a[N],b[N],money,l,y=0;
int main(){
cin>>n>>d;
for(int i=1;i<=n-1;i++){
cin>>a[i];
}
for(int i=1;i<=n;i++){
cin>>b[i];
}
b[n]=N;
money=ceil(a[1]*1.0/d)*b[1];
y=ceil(a[1]*1.0/d)*d-a[1];
for(int i=2;i<=n-1;i++){
int f=0,juli,k;
for(int j=i+1;j<=n;j++){
if(b[i]>b[j]){
k=j;
f=1;
break;
}
}
if(f==1){
for(int j=i;j<k;j++){
juli+=a[j];
}
l=juli-y;
money+=b[i]*ceil(l*1.0/d);
y=ceil(l*1.0/d)*d-l;
i=k-1;
f=0;
}else{
l=a[i]-y;
money+=b[i]*ceil(l*1.0/d);
y=ceil(l*1.0/d)*d-a[i];
}
}
cout<<money<<endl;
return 0;
}