#include<bits/stdc++.h>
#define maxn 100005
using namespace std;
long long n,d,a[maxn],v[maxn],dis[maxn],fuel[maxn],minfee[maxn],minf;
int main(){
cin>>n>>d;
for(int i=1;i<n;i++)
cin>>v[i];
for(int i=1;i<=n;i++)
cin>>a[i];
for(int i=2;i<=n;i++){
dis[i]=dis[i-1]+v[i-1];
fuel[i]=ceil(dis[i]*1.0/d);
}
minfee[1]=a[1]*fuel[2];
minf=a[1];
for(int i=2;i<n;i++)
{
minf=min(minf,a[i]);
minfee[i]=minf*(fuel[i+1]-fuel[i]);
}
cout<<minfee[n-1];
}