问题3058--坐地铁!(Easy Version)

3058: 坐地铁!(Easy Version)

时间限制: 2Sec 内存限制:128 MB
提交:776 解决:65
[ 状态] [ 讨论版] [ 提交] [命题人: ]
题目描述

是该沙漠同学去广州旅游了,当他到达广州南站地铁站的时候,他看着广州错综复杂的地铁网感到了迷茫,请帮他算一下他某一次行程的最低车票支出

下面是广州地铁票务规则中有关票价及日票的部分内容

  • 广州地铁线网票价按里程分段计价:
    起步 4 公里以内 2 元;
    4 至 12 公里范围内每递增 4 公里加 1 元;
    12 至 24 公里范围内每递增 6 公里加 1 元;
    24 公里以后,每递增 8 公里加 1 元。

  • 乘客可在广州地铁线网任一车站购买日票。
    一日票:乘客持一日票首次进闸起 24 小时内可不限次数、距离及线路乘坐地铁,每张 20 元。
    三日票:乘客持三日票首次进闸起 72 小时内可不限次数、距离及线路乘坐地铁,每张 50 元。

为了简化题目,本题只考虑起点和终点都在同一条线路的情况,不考虑换乘、支线、环线等复杂情况

不考虑通过其他线路可以缩短路程的可能性,不考虑当天后续的行程对当前行程的影响

假定所有行程都能在 24 小时内完成


输入

第一行输入一个整数n( 1 ≤ n105),代表线路上的站点数

第二行输入n - 1个实数a1, a2, a3, ..., an-1( ai> 0 )ai代表区间 i到 i+1的距离(其中i代表站点编号,单位为公里)

第三行输入一个整数q(1q105),代表查询的次数,每次查询是独立的

接下来q行,每行两个整数x, y( 1x, yn ),分别代表是该沙漠同学某次行程起点和终点的站点编号(不包含前导 0)

输出
输出 q 行,每行一个整数 p ,即是该沙漠同学当次行程需要支付的最小金额
样例输入 Copy
8 7.8 25.8 9.3 3.8 5.1 2.1 3.9 5 1 8 2 3 2 8 5 5 7 8
样例输出 Copy
11 7 10 2 2
提示

保证


在地铁票务系统中,不足 x 公里按 x 公里计算(如 5 公里的票价为 3 元)

请使用 double 类型而非 float 类型以避免精度问题

对于 Python 的提交,请使用sys.stdin读入,否则可能会时间超限