#include<bits/stdc++.h>
using namespace std;
long long n,d,ans,sh;
long long dis[100005],p[100005];
long long note=1;
int main(){
scanf("%lld%lld",&n,&d);
for(int i=1;i<n;i++){
scanf("%lld",&dis[i]);
dis[i]+=dis[i-1];
}
for(int i=1;i<=n;i++){
scanf("%lld",&p[i]);
}
for(int i=2;i<=n;i++){
if(p[i]<p[note]){
ans+=ceil((dis[i-1]-dis[note-1]-sh)*1.0/d)*p[note];
sh=ceil((dis[i-1]-dis[note-1]-sh)*1.0/d)*d-(dis[i-1]-dis[note-1]-sh);
note=i;
}
}
printf("%lld",ans);
return 0;
}