你的家乡雇佣了一些承包商——包括你在内!——来管理其市政管道网络。他们耗费巨资建造了这个网络,旨在为镇上的每家每户供应“Flubber”。不幸的是,目前还没有人发现“Flubber”的用途,但没关系。这要么是“Flubber”网络,要么是消防局,老实说,房子着火的情况很少见,消防局似乎没那么必要。
如果有人在某处决定他们需要一些“Flubber”,他们会想知道它在管道中流动的速度有多快。测量其流速是你的工作。
你可以使用连接到网络的一根管道。该管道长 $l$ 米,你可以选择在任何时间开始让“Flubber”通过这根管道。已知它以恒定的实数速度流动,该速度至少为 $v_1$ 米/秒,至多为 $v_2$ 米/秒。你希望以至多 $\frac{t}{2}$ 米/秒的绝对误差来估计这个速度。
不幸的是,管道是不透明的,所以你唯一能做的就是在其长度上的任何一点敲击管道,即在闭区间 $[0, l]$ 内的实数范围内。听敲击的声音可以告诉你“Flubber”是否已经到达了该点。你的反应不是无限快的。你的第一次敲击必须在开始流动后至少 $s$ 秒,并且两次敲击之间必须至少间隔 $s$ 秒。
确定一种策略,在最坏情况下,通过最少的敲击次数来估计“Flubber”的流速。注意,在某些情况下,所需的估计可能是不可能的(例如,如果“Flubber”太快到达管道末端)。
图片由 Nevit 通过 Wikimedia Commons 提供
输入格式
输入包含多个测试用例。第一行包含一个整数 $c$ ($1 \le c \le 100$),表示测试用例的数量。接下来的 $c$ 行中,每一行描述一个测试用例。每个测试用例包含五个整数 $l, v_1, v_2, t$ 和 $s$ ($1 \le l, v_1, v_2, t, s \le 10^9$ 且 $v_1 < v_2$),其含义如上所述。
输出格式
对于每个测试用例,输出在最坏情况下估计流速所需的最少敲击次数。如果无法足够精确地测量流速,则输出 impossible。
样例
样例输入 1
3 1000 1 30 1 1 60 2 10 2 5 59 2 10 2 5
样例输出 1
5 3 impossible