篮球统计
题目背景
小L喜欢唱、跳、Rap和篮球。
在同一时刻,篮球场上可能会有很多个在空中的篮球,小L想统计这些篮球的信息。
题目描述
当一个篮球被抛到空中时,小L会记下一个时刻 $l$ ,此时这个篮球开始被小L统计;当一个篮球被接住时,小L会记下一个时刻 $r$ ,在这之后这个篮球的状态不再被小L统计。对于每个篮球,小L会计算出在时刻 $l$ 这个篮球的高度和向上的初速度。
对于一个时刻 $x$ ,小L想知道,对于所有此时还在空中的篮球,高度最高的篮球的高度是多少。
**注意** :被发现的篮球的出现时间 $l,r$ 和小L统计信息的时刻 $x$ 均没有任何单调性。
输入输出格式
输入格式
输入的第一行为一个整数 $m$ 。
接下来的 $m$ 行,每行为一个操作或询问,为以下形式之一:
1. `add a v l r` :小L发现了一个在空中的篮球,这个篮球在时刻 $l$ 被抛向空中,在时刻 $r$ 被接住,这个篮球在时刻 $l$ 的高度是 $a$ ,向上的初始速度为 $v$ 。
2. `query x` :请告诉小L,在他已经给出的信息中,在时刻 $x$ 在空中的所有篮球中最高的高度是多少。
输出格式
对于每个 `query` 操作,输出一行,为这个最高的高度。如果此时不存在在空中的篮球,输出 `Undefined` 。
为了减小精度误差,推荐使用 `long double` 类型存储浮点数,输出格式为 `%Lf` 。
为了避免精度问题,本题使用 **Special Judge** 。如果您的答案与标程的答案相差小于等于 $0.005$ ,则会被视为是正确的。
输入输出样例
输入样例 #1
5
query 1.000
add 1.000 5.000 1.000 2.000
query 1.000
query 2.000
query 1.500
输出样例 #1
Undefined
1.000000
1.100000
2.275000
说明
对于 $30\%$ 的数据, $m\le 5000$
对于另外 $30\%$ 的数据, $-100< l,r,x< 100$
对于 $100\%$ 的数据, $1\le m\le 100000,-1000< a,v < 1000,-10^6< l,r,x < 10^6,l\le r$ ,保证输入中所有的小数均为 $3$ 位小数。
篮球高度可能是负数。
### 小K教你学物理
本题中所有的单位均采用国际单位制。即时间单位是秒( $s$ ),长度单位是米( $m$ )。
本题中取重力加速度 $g=9.8 ~ m \cdot s^{-2}$ 。
省略掉篮球横向的位移,可以将篮球的运动看做是 **竖直上抛运动** 。根据题目中给出的信息,已知篮球初始的高度 $a$ ,初速度 $v$ ,重力加速度 $g$ , **在空中的时间** $t$ ,则篮球在这一时刻的高度是 $-\dfrac 1 2 g t^2 + vt+a$ 。