KY23 最小花费 DP

DP,比较恼的是题中没说明a、b的范围,不敢轻易用双循环
添加链接描述

#include<bits/stdc++.h>

using namespace std;

#define ll long long

const int INF = 1e9 + 10;

int l1, l2, l3, c1, c2, c3, a, b, n;

int pri(int d){
   
	if(d <= l1) return c1;
	else if(d <= l2) return c2;
	return c3;
} 

int main()
{
   
	while(cin>>l1>>l2>>l3>>c1>>c2>>c3>>a>>b>>n){
   
		vector<ll>p(n + 1, 0);
		vector<ll>dp(n + 1, INF);  //dp[i]表示从第一个站到第i个站的最短距离 
		for(int i = 2; i <= n; i ++ ){
   
			cin>>p[i];  //p[i]表示第1个站到第i个站的距离 
		} 
        p[1] = 0;
		dp[a] = 0;
		for(int i = a + 1; i <= b; i ++ ){
     //这一次下车的站 
			for(int j = a; j < i; j ++ ){
     //上一次下车的站 
				int d = p[i] - p[j];  //两个车站间的距离
				if(p[i] - p[j] <= l3){
   
					dp[i] = min(dp[i], dp[j] + pri(d));
				}
			}
		}
	
		cout<<dp[b]<<endl; 
	}
	return 0;
}

相关推荐

  1. KY23 花费 DP

    2024-01-09 18:02:06       40 阅读
  2. 746.使用花费爬楼梯

    2024-01-09 18:02:06       34 阅读
  3. 746. 使用花费爬楼梯

    2024-01-09 18:02:06       37 阅读
  4. 746. 使用花费爬楼梯

    2024-01-09 18:02:06       38 阅读
  5. DP】64.路径和

    2024-01-09 18:02:06       38 阅读
  6. LeetCode 746. 使用花费爬楼梯

    2024-01-09 18:02:06       46 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-09 18:02:06       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-09 18:02:06       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-09 18:02:06       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-09 18:02:06       18 阅读

热门阅读

  1. 算法:删除字符串中的所有相邻重复项

    2024-01-09 18:02:06       39 阅读
  2. Redis面试题4

    2024-01-09 18:02:06       30 阅读
  3. MySQL第五战:常见面试题(下)

    2024-01-09 18:02:06       35 阅读
  4. 秒杀业务

    2024-01-09 18:02:06       34 阅读