#P13322. [GCJ 2012 #1C] Out of Gas

    ID: 13136 远端评测题 12000~24000ms 1024MiB 尝试: 0 已通过: 0 难度: 7 上传者: 标签>数学2012二分Special JudgeGoogle Code Jam

[GCJ 2012 #1C] Out of Gas

Description

你的汽车没油了,你想尽快回家!幸运的是,你的家在山脚下,而你(和你的车)在山顶。不幸的是,你前面还有一辆车,你无法超过它。幸运的是,你的刹车很好用,而且非常强大。

你从山顶以 0m/s0\,\text{m/s} 的速度、在 00 秒时刻出发。重力会以恒定加速度将你的车向山下拉。你可以随时使用刹车来减慢速度,或者临时减小加速度,幅度不限。

如果你以最优方式使用刹车,你最快多久能到家?

Input Format

输入的第一行为测试用例数 TT。接下来有 TT 组测试数据。每组测试数据的第一行包含三个用空格分隔的数:一个实数 DD,表示你到家的距离(米);两个整数 NNAADD 保证有且仅有 66 位小数。

接下来 NN 行,每行包含两个用空格分隔的实数:第 ii 个为时间 tit_i(秒),第 ii 个为位置 xix_i(米)。tit_ixix_i 都保证有且仅有 66 位小数。

再接下来一行,包含 AA 个用空格分隔的实数 aia_i,表示加速度(m/s2\text{m/s}^2),每个加速度保证有且仅有 22 位小数。

前车的位置由 (ti,xi)(t_i, x_i) 对给出。前车在 tit_i 秒时位于山顶下方 xix_i 米处(即你的起点)。前车在 tit_iti+1t_{i+1} 之间以恒定速度行驶。所有 tit_ixix_i 均严格递增,t0=0t_0 = 0

例如,如果 t5=10t_5=10x5=20x_5=20t6=20t_6=20x6=40x_6=40,那么开始后 1010 秒前车在 2020 米处,1515 秒时在 3030 米处,2020 秒时在 4040 米处。

Output Format

对于每个测试用例,输出一行 "Case #cc:",其中 cc 为测试用例编号(从 11 开始)。然后输出 AA 行,第 ii 行为你在重力加速度为 aia_i 时,且以最优方式使用刹车,最快到家的秒数。答案的绝对或相对误差不超过 10610^{-6} 即视为正确。输出中不应有空行。

3
1000.000000 2 3
0.000000 20.500000
25.000000 1000.000000
1.00 5.00 9.81
50.000000 2 2
0.000000 0.000000
100000.000000 100.000000
1.00 1.01
10000.000000 3 1
0.000000 0.000000
10000.000000 0.100000
10000.100000 100000.000000
1.00
Case #1:
44.7213595
25.000000
25.0
Case #2:
50000.0
50000.0
Case #3:
10140.974143

Hint

说明

位置与加速度:一个以恒定加速度 am/s2a\,\text{m/s}^2、初速度 v0m/sv_0\,\text{m/s} 的物体,在 tt 秒后将移动 v0t+0.5at2v_0 \cdot t + 0.5 \cdot a \cdot t^2 米。

坡面距离:所有距离和加速度均以山坡直线方向为准,不是水平距离。例如,你以 2m/s22\,\text{m/s}^2 的加速度、初速度 0m/s0\,\text{m/s},前车静止在 x=1x=1,那么你正好 11 秒能追到前车。

前车:你永远不能超过前车,也就是说,任何时刻你的下坡距离都不能大于前车,可以相等。两车都视为质点。

输出数值:你可以输出任意多的小数位。我们会用 10610^{-6} 作为误差阈值进行比较。因此 252525.025.025.00000025.000000 都被视为相同。小数点后的尾随 00 不影响判分。

限制条件

  • 1T201 \leq T \leq 20
  • 1.0D1041.0 \leq D \leq 10^4
  • 1.0ai9.811.0 \leq a_i \leq 9.81
  • 0.0ti1050.0 \leq t_i \leq 10^5
  • 0.0xi1050.0 \leq x_i \leq 10^5
  • ti<ti+1t_i < t_{i+1}
  • xi<xi+1x_i < x_{i+1}
  • t0=0t_0 = 0
  • xN1Dx_{N-1} \geq D

测试集 1(10 分,结果可见)

  • 时间限制:60 12 秒
  • 1N21 \leq N \leq 2
  • 1A101 \leq A \leq 10

测试集 2(27 分,结果隐藏)

  • 时间限制:120 24 秒
  • 1N20001 \leq N \leq 2000
  • 1A2501 \leq A \leq 250

翻译由 ChatGPT-4.1 完成。