你加钠了吗 • 2天前
using namespace std; long long a[1000001], b[1000001], c[1000001]; long long ans = 0;
int main() {
long long n, d, sum = 0;
cin >> n >> d;
for (long long i = 1; i < n; i++) {
long long x;
cin >> x;
a[i] = a[i - 1] + x;
}
for (long long i = 1; i <= n; i++) {
cin >> b[i];
}
c[1] = b[1];
for (long long i = 2; i <= n; i++)
c[i] = min(b[i], c[i - 1]);
long long v = 0;
for (long long i = 1; i <= n; i++) {
if (a[i] <= v)
continue;
long long k = ceil(double(a[i] - v ) / d);
ans += k * c[i];
v += k * d;
}
cout << ans;
}
评论:
请先登录,才能进行评论