公路乘车

                                              公路乘车

描述 Description

一个特别的单行街道在每公里处有一个汽车站。顾客根据他们乘坐汽车的公里使来付费。例如样例的第一行就是一个费用的单子。
 
没有一辆车子行驶超过10公里,一个顾客打算行驶n公里(1<=n<=100),它可以通过无限次的换车来完成旅程。最后要求费用最少。

输入格式 InputFormat

 第一行十个整数分别表示行走1到10公里的费用(<=500)。注意这些数并无实际的经济意义,即行驶10公里费用可能比行驶一公里少。
 第二行一个整数n表示,旅客的总路程数。

输出格式 OutputFormat

仅一个整数表示最少费用。

样例输入 SampleInput

12 21 31 40 49 58 69 79 90 101
15

样例输出 SampleOutput 

147

明明是完全背包,动态规划,找转移方程就行了。

代码简单~~注意if判断。

 1 #include<iostream>
 2 #include<cstring>
 3 long a[11],f[101],n;
 4 int main()
 5 {
 6     for(int i=1;i<=10;i++) scanf("%ld",&a[i]);
 7     scanf("%ld",&n);
 8     for(int i=1;i<=n;i++) f[i]=0xfffffff;
 9     f[0]=0;
10     for(int i=1;i<=10;i++)
11         for(int j=1;j<=n;j++)
12             if(f[j-i]+a[i]<f[j]) f[j]=f[j-i]+a[i];
13    printf("%ld\n",f[n]);
14 }

时间: 2024-08-06 16:03:33

公路乘车的相关文章

TYVJ 公路乘车 完全背包(水题)

描述 Description 一个特别的单行街道在每公里处有一个汽车站.顾客根据他们乘坐汽车的公里使来付费.例如样例的第一行就是一个费用的单子. 没有一辆车子行驶超过10公里,一个顾客打算行驶n公里(1<=n<=100),它可以通过无限次的换车来完成旅程.最后要求费用最少. 输入格式 InputFormat 第一行十个整数分别表示行走1到10公里的费用(<=500).注意这些数并无实际的经济意义,即行驶10公里费用可能比行驶一公里少.第二行一个整数n表示,旅客的总路程数. 输出格式 Ou

P1177 公路乘车 - Smart Online Judge

简单的动态规划 题目ID:1177 题目名称:公路乘车 有效耗时:15 ms 空间消耗:516 KB 程序代码: 1 #include<iostream> 2 using namespace std; 3 4 int f[11]; 5 int g[102]; 6 int main(){ 7 for(int i=1;i<=10;i++){ 8 cin>>f[i]; 9 } 10 for(int i=1;i<=102;i++){ 11 g[i]=0; 12 } 13 14

Tyvj P1015 公路乘车 (DP)

 描述 Description 一个特别的单行街道在每公里处有一个汽车站.顾客根据他们乘坐汽车的公里使来付费.例如样例的第一行就是一个费用的单子. 没有一辆车子行驶超过10公里,一个顾客打算行驶n公里(1<=n<=100),它可以通过无限次的换车来完成旅程.最后要求费用最少. 输入格式 InputFormat 第一行十个整数分别表示行走1到10公里的费用(<=500).注意这些数并无实际的经济意义,即行驶10公里费用可能比行驶一公里少. 第二行一个整数n表示,旅客的总路程数. 输出格

TYVJ P1015 公路乘车

时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述 一个特别的单行街道在每公里处有一个汽车站.顾客根据他们乘坐汽车的公里使来付费.例如样例的第一行就是一个费用的单子. 没有一辆车子行驶超过10公里,一个顾客打算行驶n公里(1<=n<=100),它可以通过无限次的换车来完成旅程.最后要求费用最少. 输入格式 第一行十个整数分别表示行走1到10公里的费用(<=500).注意这些数并无实际的经济意义,即行驶10公里费用可能比行驶一公里少.    第二行一个

大神刷题表

9月27日 后缀数组:[wikioi3160]最长公共子串 dp:NOIP2001统计单词个数 后缀自动机:[spoj1812]Longest Common Substring II [wikioi3160]最长公共子串 [spoj7258]Lexicographical Substring Search 扫描线+set:[poj2932]Coneology 扫描线+set+树上删边游戏:[FJOI2013]圆形游戏 结论:[bzoj3706][FJ2014集训]反色刷 最小环:[poj1734

乘车码来了,地铁公交都可以刷微信了

乘车码上线后,用户可在微信钱包--城市服务中寻找需要开通地区的乘车码,仅需3步即可完成申请.完成后便可使用乘车码搭乘公交,为高效出行奠定基础: 通过城市服务/商户小程序找到所需要地区乘车码开通页面 绑定银行卡并签约免密支付,开通成功插入微信卡包 用户通过卡包打开乘车码,扫码乘车 乘车码服务解决方案将大面积开放给接入合作伙伴,同时给予服务商最大的自主权,并连同小程序.公众号平台,帮助合作伙伴实现用户流量与粘性的提升. 300毫秒快速进站 双离线二维码保障进站效率 在城市交通高峰期间,人流量较高,不

修复公路

https://www.luogu.org/problem/show?pid=1111 题目背景 A地区在地震过后,连接所有村庄的公路都造成了损坏而无法通车.政府派人修复这些公路. 题目描述 给出A地区的村庄数N,和公路数M,公路是双向的.并告诉你每条公路的连着哪两个村庄,并告诉你什么时候能修完这条公路.问最早什么时候任意两个村庄能够通车,即最早什么时候任意两条村庄都存在至少一条修复完成的道路(可以由多条公路连成一条道路) 输入输出格式 输入格式: 第1行两个正整数N,M 下面M行,每行3个正整

最小生成树 kruskal算法 codevs 1638 修复公路

1638 修复公路 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 钻石 Diamond 题解 题目描述 Description A地区在地震过后,连接所有村庄的公路都造成了损坏而无法通车.政府派人修复这些公路. 给出A地区的村庄数N,和公路数M,公路是双向的.并告诉你每条公路的连着哪两个村庄,并告诉你什么时候能修完这条公路.问最早什么时候任意两个村庄能够通车,即最早什么时候任意两条村庄都存在至少一条修复完成的道路(可以由多条公路连成一条道路) 输入描述 Input Descr

洛谷P1265 公路修建

P1265 公路修建 177通过 600提交 题目提供者该用户不存在 标签图论 难度普及+/提高 提交该题 讨论 题解 记录 最新讨论 long long类型赋值-1为什么… p党80的进 为什么不过啊... 题目描述 某国有n个城市,它们互相之间没有公路相通,因此交通十分不便.为解决这一“行路难”的问题,政府决定修建公路.修建公路的任务由各城市共同完成. 修建工程分若干轮完成.在每一轮中,每个城市选择一个与它最近的城市,申请修建通往该城市的公路.政府负责审批这些申请以决定是否同意修建. 政府审