codevs 最小乘车费用 1417
来源:互联网 发布:矩阵里det是什么意思 编辑:程序博客网 时间:2024/05/18 01:31
题目描述 Description
任意一辆汽车从不行驶超过10公里。某人想行驶n公里,可以任意次换车,请帮他找到一种乘车方案,使得费用最小。
注意:10公里的费用是可以比1公里小的。
第一行为10个不超过200的整数,依次表示1~10公里的费用。
第二行为某人想要行驶的公里数。
12 21 31 40 49 58 69 79 90 101
15
样例输出 Sample Output
假设某条街上每一公里就有一个公共汽车站,并且乘车费用如下:
公里数 1 2 3 4 5 6 7 8 9 10
费用 12 21 31 40 49 58 69 79 90 101任意一辆汽车从不行驶超过10公里。某人想行驶n公里,可以任意次换车,请帮他找到一种乘车方案,使得费用最小。
注意:10公里的费用是可以比1公里小的。
第一行为10个不超过200的整数,依次表示1~10公里的费用。
第二行为某人想要行驶的公里数。
输出描述 Output Description
输出仅一行,为乘车的最小费用。12 21 31 40 49 58 69 79 90 101
15
样例输出 Sample Output
147
代码:
var a:array[1..10] of longint;
f:array[0..100] of longint;
i,n,j,t,min:longint;
begin
for i:=1 to 10 do begin read(a[i]); f[i]:=a[i]; end;
read(n);
for i:=1 to 10 do
begin
for j:=1 to i-1 do
if f[j]+f[i-j]<f[i] then f[i]:=f[j]+f[i-j];
end;
if n<=10 then writeln(f[n])
else
begin
for i:=11 to n do
begin
min:=999999;
for j:=i-1 downto 1 do
begin
if f[i-j]+f[j]<min then min:=f[i-j]+f[j];
end;
f[i]:=min;
end;
writeln(f[n]);
end;
end.
0 0
- codevs 最小乘车费用 1417
- 1417 最小乘车费用(busses)(codevs)
- 最小乘车费用
- wikioi 最小乘车费用
- 【9914】最小乘车费用
- 最小乘车费用
- 最小乘车费用
- 最小乘车费用
- 最小乘车费用
- 最小乘车费用
- (ssl1643)最小乘车费用
- [DP]最小乘车费用
- 最小乘车费用
- 最小的乘车费用
- 【完全背包】最小乘车费用
- 【DP】【水题】最小乘车费用
- 最小乘车费用-SSL 1643
- RQNOJ 169 最小乘车费用
- Android DataBinding完全解析
- json请求数据有Unicode乱码
- 计算机视觉亮度与计算机视觉深度
- java设计模式之抽象工厂模式
- leetcode_middle_17_392. Is Subsequence
- codevs 最小乘车费用 1417
- 卷包裹,线段相交,计算几何(找边界,LA 3218)
- java学习记录----面向对象(二)
- 普及练习场之排序
- C语言蛇形矩阵例题
- 1034. Head of a Gang (30)
- [ACM] POJ 1753 Flip Game (枚举,BFS,位运算)
- 深度学习之Windows下安装caffe及配置Python和matlab接口
- Android Fragment 示例