测试数据都没过(玄关)
查看原帖
测试数据都没过(玄关)
1269111
Eden_star楼主2024/9/23 17:12
#include <bits/stdc++.h>
using namespace std;

long long jyzjl[100008], yj[100008]; // jyzjl=加油站距离,yj=油价 
long long n, d; // n=站点数量,d=油耗 

int main() {
    cin >> n >> d;
    for (long long i = 1; i < n; i++) {
        cin >> jyzjl[i];
    }
    for (long long i = 1; i < n; i++) {
        cin >> yj[i];
    }
    
    long long q = 0, jl = 0; // q=钱,jl=距离 
    int a = 1; // 记录最低油价的索引
    long long xjyz = 1; // 现加油站

    for (long long i = 1; i < n; i++) {
        jl += jyzjl[i]; // 累加距离
        
        if (yj[i] < yj[a]) {
            // 发现更低的油价
            q += yj[a] * (jl / d);
            jl = 0; // 重置距离
            a = i; // 更新最低油价的索引
        }
    }
    
    // 最后一次加油
    q += yj[a] * (jl / d);
    
    cout << q;
    return 0;
}

2024/9/23 17:12
加载中...