博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Timus 1031
阅读量:4596 次
发布时间:2019-06-09

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

res[i]表示到达第i个站点所用的最小费用;状态转移方程如下:

res[i]=min{res[k]+f(L1,L2,L3)};(1<=k<i)

代码如下:

#include
#include
#include
using namespace std; #define MAX 1234567890 int res[10001],dist[10001],L1,L2,L3,C1,C2,C3; int min(int a,int b) {
return a < b ? a : b; } int work(int start,int end) {
int i,j,w; for(i=start+1;i<=end;i++) {
res[i]=MAX; for(j=i-1;j>=start;j--) {
w=dist[i]-dist[j]; if(w>L3) break; if(w<=L1) res[i]=min(res[i],res[j]+C1); if(w<=L2) res[i]=min(res[i],res[j]+C2); if(w<=L3) res[i]=min(res[i],res[j]+C3); } } return res[end]; } int main() {
int i,n,start,end,temp; while(scanf("%d %d %d %d %d %d",&L1,&L2,&L3,&C1,&C2,&C3)!=EOF) {
scanf("%d %d %d",&n,&start,&end); if(start > end) temp=start,start=end,end=temp; for(i=2;i<=n;i++) scanf("%d",&dist[i]); printf("%d\n",work(start,end)); } return 0; }

转载于:https://www.cnblogs.com/yu-chao/archive/2012/04/07/2436128.html

你可能感兴趣的文章
编程之美-2.19-区间重合判断
查看>>
游戏中心-内购—应用内购买修改应用程序信息
查看>>
python: can't open file 'h.py': [Errno 2] No such file or directory
查看>>
PHP Include 文件
查看>>
网站首页加载动态数据的方法
查看>>
09-Python之迭代器,生成器
查看>>
Java逆向入门(一)
查看>>
泛型与非泛型代码性能比较
查看>>
杂项_眼见非实(ISCCCTF)
查看>>
代码审计_弱类型整数大小比较绕过
查看>>
PHP函数方法
查看>>
[译]你真的了解外边距折叠吗
查看>>
c#中IList<T>与List<T>
查看>>
python 多线程删除MySQL表
查看>>
ibatis报错
查看>>
SCN学习
查看>>
mysql的启动
查看>>
TCP端口状态说明ESTABLISHED、TIME_WAIT、 CLOSE_WAIT
查看>>
自己电脑能ping别人的,但别人电脑去不能跟我们的电脑通信
查看>>
制作自动化系统安装U盘
查看>>