#arc0122. [arc012_2]アキレスと亀

[arc012_2]アキレスと亀

问题描述

高桥君非常喜欢乌龟。他发现离他LL米远的地方有一只乌龟,于是他决定追逐并捉住它。
然而,乌龟不喜欢高桥君。一旦被高桥君发现并开始追逐,乌龟会往与高桥君相反的方向逃跑。
高桥君的追逐速度是每秒vav_a米,乌龟的逃跑速度是每秒vbv_b米。

于是高桥君突然产生了疑问。当高桥君到达乌龟所在的位置时,乌龟已经向前移动了一点。
当高桥君到达乌龟所在的位置时,乌龟又再次向前移动了一点。
这样重复下去,高桥君永远也无法追上乌龟了吧?

为了调查这个事实,高桥君想要重复这个过程NN次,并找出高桥君和乌龟之间的距离缩短了多少。
请编写一个程序来计算高桥君和乌龟之间的距离。
请注意,高桥君会直接沿着最短路径走到乌龟所在的地方。
此外,请注意,在开始移动时,高桥君会移动到乌龟所在的位置,这被视为一次移动,因此请注意每个移动所需的时间可能不同。


输入

输入通过标准输入给出,格式如下:NN vav_a vbv_b LL

  • 第1行为一个整数N(1N100)N(1≦N≦100),表示高桥君移动的次数;
  • 第2行为一个整数va(1va100)v_a(1≦v_a≦100),表示高桥君的秒速;
  • 第3行为一个整数vb(1vbva)v_b(1≦v_b<v_a),表示乌龟的秒速;
  • 第4行为一个整数L(1L100)L(1≦L≦100),表示高桥君和乌龟之间的初始距离。

输出

输出高桥君进行NN次移动后,高桥君和乌龟之间的距离。
输出应该通过标准输出给出,并以换行符结束。
如果绝对误差或相对误差中至少有一个小于10610^{-6},则答案被认为是正确的。


示例 1

输入示例 1

3 2 1 16

输出示例 1

2
  • 在第一次移动中,高桥君用8秒走了16米。这时,乌龟向前逃了8米。
  • 在第二次移动中,高桥君用4秒走了8米。这时,乌龟向前逃了4米。
  • 在第三次移动中,高桥君用2秒走了4米。这时,乌龟向前逃了2米。

示例 2

输入示例 2

100 100 1 100

输出示例 2

0
  • 即使高桥君以每秒100米的速度奔跑,也无法追上乌龟,但距离会越来越近,直至为0。
  • 如果使用指数表示法输出,可能会被认为是错误的,请注意。

示例 3

输入示例 3

80 50 49 72

输出示例 3

14.302717205907