P9749 [CSP-J 2023] 公路
#include<bits/stdc++.h>
#define N 100010
using namespace std;
long long n,m,you,money;
long long a[N],b[N],c[N];
int main(){
cin>>n>>m;
for(int i=1;i<n;i++){
cin>>a[i];
}
for(int i=1;i<=n;i++){
cin>>b[i];
}
int Min=INT_MAX;
for(int i=1;i<n;i++){
if(b[i]<Min)Min=b[i];
you+=ceil((a[i]-you*m)*1.0/m);
money+=Min*ceil((a[i]-you*m)*1.0/m);
}
cout<<money;
return 0;
}