社区讨论

题解

P9749[CSP-J 2023] 公路参与者 5已保存回复 4

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
4 条
当前快照
1 份
快照标识符
@m2ot42ey
此快照首次捕获于
2024/10/25 22:07
去年
此快照最后确认于
2024/10/25 22:11
去年
查看原帖
看代码:
CPP
#include <bits/stdc++.h>
using namespace std;
using LL = long long;

const int N = 1e5 + 10;

int v[N], a[N];
int n, d;
int main() {
    scanf("%d%d", &n, &d);
    for (int i = 1; i < n; i++) scanf("%d", &v[i]);
    int mi = INT_MAX;
    LL ans = 0, s = 0;
    for (int i = 1; i < n; i++) {
        scanf("%d", &a[i]);
        s += v[i];
        mi = min(mi, a[i]);
        if (s > 0) {
            ans += (s + d - 1) / d * mi;
            s -= (s + d - 1) / d * d;
        }
    }
    cout << ans;
    return 0;
}

回复

4 条回复,欢迎继续交流。

正在加载回复...