题解 | #最小花费#

最小花费

https://www.nowcoder.com/practice/e6df3e3005e34e2598b9b565cfe797c9

#include<iostream>
#include<vector>
#include<climits>
 
using namespace std;
 
int l1, l2, l3, c1, c2, c3;
//计算不同路程对应得价格,distance <= l3
int price(int distance){
    if(distance <= l1) return c1;
    else if(distance <= l2) return c2;
    return c3;
}
 
int main(){
    while(cin >> l1 >> l2 >> l3 >> c1 >> c2 >> c3) {
        int start, end;
        cin >> start >> end;
        int n;
        cin >> n;
        vector<int> dis(n + 1, 0);
        for(int i = 2; i <= n; i ++)
            cin >> dis[i];
        vector<int> dp(n + 1, INT_MAX);
        dp[start] = 0;
        for(int i = start + 1; i <= end; i ++){
            for(int j = start; j < i; j ++){
                if(dis[i] - dis[j] <= l3){
                    dp[i] = min(dp[i], dp[j] + price(dis[i] - dis[j]));
                }
            }
        }
        cout << dp[end] << endl;
    }
    return 0;
}

全部评论

相关推荐

这两个项目能找到实习吗,哪里还要改改,boss上好多要了简历不回的,要不要换项目,感觉来不及了
牛客85629890号:有个学长项目和你一模一样,去快手京东实习,最后入职阿里
点赞 评论 收藏
分享
2024-12-27 10:21
已编辑
海南师范大学 媒介策划
到我怀里来:身高体重住址这些就别写了,留几个关键的就行,工作经历突出重点写详细点
点赞 评论 收藏
分享
西松屋:说明原部门有机会把
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务