P1180 驾车旅游

    • 122通过
    • 263提交
  • 题目提供者
  • 评测方式 云端评测
  • 标签 搜索
  • 难度 普及/提高-
  • 时空限制 1000ms / 128MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 最新讨论 显示

    推荐的相关题目 显示

    题目描述

    如今许多普通百姓家有了私家车,一些人喜爱自己驾车从一个城市到另一个城市旅游。自己驾车旅游时总会碰到加油和吃饭的问题,在出发之前,驾车人总要想方设法得到从一个城市到另一个城市路线上的加油站的列表,列表中包括了所有加油站的位置及其每升的油价(如$3.25$元/$L$)。驾车者一般都有以下的习惯:

    (1)除非汽车无法用油箱里的汽油达到下一个加油站或目的地,在油箱里还有不少于最大容量一半的汽油时,驾驶员从不在加油站停下来;

    (2)在第一个停下的加油站总是将油箱加满;

    (3)在加油站加油的同时,买快餐等吃的东西花去$20$元。

    (4)从起始城市出发时油箱总是满的。

    (5)加油站付钱总是精确到$0.1$元(四舍五入)。

    (6)驾车者都知道自己的汽车每升汽油能够行驶的里程数。

    现在要你帮忙做的就是编写一个程序,计算出驾车从一个城市到另一个城市的旅游在加油和吃饭方面最少的费用。

    输入输出格式

    输入格式:

    第一行是一个实数,是从出发地到目的地的距离(单位:$km$)。

    第二行是三个实数和一个整数,其中第一个实数是汽车油箱的最大容量(单位:$L$);第二个实数是汽车每升油能行驶的公里数;第三个实数是汽车在出发地加满油箱时的费用(单位元);一个整数是$1$到$50$间的数,表示从出发地到目的地线路上加油站的数目。

    接下来$n$行都是两个实数,第一个数表示从出发地到某一个加油站的距离(单位:$km$);第二个实数表示该加油站汽油的价格(单位:元)。

    数据项中的每个数据都是正确的,不需判错。一条线路上的加油站根据其到出发地的距离递增排列并且都不会大于从出发地到目的地的距离。

    输出格式:

    就一个数据,是精确到$0.1$元的最小的加油和吃饭费用

    输入输出样例

    输入样例#1: 复制
    600
    40  8.5  128  3
    200  3.52
    350  3.45
    500  365
    输出样例#1: 复制
    13133.2
    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。