博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
caioj 1082 动态规划入门(非常规DP6:火车票)
阅读量:5809 次
发布时间:2019-06-18

本文共 814 字,大约阅读时间需要 2 分钟。

f[i]表示从起点到第i个车站的最小费用

f[i] = min(f[j] + dist(i, j)), j < i

动规中设置起点为0,其他为正无穷

(貌似不用开long long也可以)

#include
#include
#define REP(i, a, b) for(int i = (a); i < (b); i++)using namespace std;typedef long long ll;const int MAXN = 112;ll a[MAXN], l[4], c[4], f[MAXN];int n, s, e;ll dist(ll n, ll m){ ll x = a[m] - a[n]; if(0 < x && x <= l[1]) return c[1]; if(l[1] < x && x <= l[2]) return c[2]; if(l[2] < x && x <= l[3]) return c[3]; return 2e9;}int main(){ REP(i, 1, 4) scanf("%lld", &l[i]); REP(i, 1, 4) scanf("%lld", &c[i]); scanf("%d%d%d", &n, &s, &e); if(s > e) swap(s, e); REP(i, 2, n + 1) scanf("%d", &a[i]), f[i] = 2e9; f[s] = 0; REP(i, s, e + 1) REP(j, s, i) f[i] = min(f[i], f[j] + dist(j, i)); printf("%lld\n", f[e]); return 0;}

 

转载于:https://www.cnblogs.com/sugewud/p/9819417.html

你可能感兴趣的文章
欧盟网络安全法案对英国产业意味着什么?
查看>>
LinkedIn终于进军视频领域 不过貌似有点晚
查看>>
RabbitMQ:四种ExChange用法
查看>>
半监督组稀疏表示:模型、算法与应用(ECAI 2016论文精选)| AI科技评论
查看>>
从德国能源转型中学什么?
查看>>
《Android的设计与实现:卷I》——第1章 1.2Android体系结构
查看>>
《程序员度量:改善软件团队的分析学》一峰值和谷值
查看>>
《Linux高性能服务器编程》——3.10 拥塞控制
查看>>
OA知识:浅谈企业如何选型OA系统
查看>>
AI浪潮下,语音识别建模技术的演进 | 硬创公开课
查看>>
[原创干货]商业场景下的数据营销
查看>>
2017年视频监控领域的变革与发展预测
查看>>
mac下面的secureCRT默认保存不上密码
查看>>
未来WiFi技术新方向:传输、覆盖、能耗
查看>>
微软开发出政府专用Win10 更加易于管理和安全
查看>>
“黑暗大陆”非洲融入新能源开发大趋势
查看>>
虚拟现实技术在视频监控有市场吗?
查看>>
Inception:LinkedIn是如何利用异常日志实现服务监控的
查看>>
面对勒索病毒:补救用三招 防御是高招
查看>>
助力家庭大换洗 金羚洗衣机“化繁为简”
查看>>