FTHEELF  Feanor The Elf
Feanor is an elf, and of course, he really likes arrows and bows. Surprisingly enough, Feanor
has a laptop, but he knows nothing about programming, so he requires your help.
Feanor lives in a tower of height H, and he loves throwing arrows from the top of it. He had a
good amount of intesive training and he knows that he always throws his arrows with the same
initial speed V . He wants you to make a program that given H and V returns the maximum
distance that a Feanor’s arrow can reach when it hits the ground, measured from the base
of the tower. With this information, he will be able to place a nice circular fence to prevent
deoriented little elves from being killed.
Newtonian laws apply in Feanor’s world and the gravity has the same strength as in ours. These
laws can be summarized as follows:
• The position of Feanor is assumed to be a point. The same occurs with the position of
his arrow at each moment in time.
• The initial speed V of the arrow can be expressed as Vx^{2} + Vy^{2} = V^{2} , where Vx and Vy
are the horizontal and vertical components of V , respectively. Speed Vx is always non
negative, while speed Vy is positive if the arrow is thrown up, and negative if the arrow
is thrown down.
• The initial position of the arrow is the position of Feanor.
• The horizontal position of the arrow (relative to Feanor’s position) at time t is x(t) = Vx * t.
• The vertical position of the arrow (relative to Feanor’s position) at time t is y(t) = Vy * t − gt^{2} / 2, where g = 9.8 m/s2 .
Input
The input contains several test cases. Each test case is described in a single line that contains
two integers V and H separated by a single space. The value V is the initial speed of Feanor’s
arrow measured in m/s (0 ≤ V ≤ 1000), while the value H is the tower’s height in meters
(0 ≤ H ≤ 1000). The last line of the input contains the number −1 twice separated by a single
space and should not be processed as a test case.
Output
For each test case output a single line with the radius of Feanor’s fence in meters, rounded up
to 6 decimal digits (he wants to be sure that he doesn’t kill those cute little elves).
Example
Input:
1 0
10 0
100 0
1000 0
1 1
Output:
0.102041
10.204082
1020.408163
102040.816327
hide comments
mkfeuhrer:
20160620 14:27:15
easy phy ... :P 

[Mayank Pratap]:
20150618 19:30:43
I accidentally killed some cute elves .... :(


Dushyant Singh:
20150607 11:19:01
Not so easy to derive the formula. After that it's cakewalk! 

ASHUTOSH DWIVEDI:
20150514 17:07:53
easy one...


Héctor Martín Peña Pollastri:
20140919 18:59:54
O(1) solution, nice :P 

UJtriumphsâ„¢:
20140423 17:54:36
AC in 1st attempt!!!!


pika_pika:
20130721 12:24:19
AC with python 3. Got 2 NZECs because of indentation error. I then wrote in the standard python editor and got AC. worked for me 

ওয়াসী (Wasi):
20130531 12:46:06
Nice and Simple!


Chandan Mittal:
20130531 11:14:36
do take care of 0 0 

shiva_hellgeek:
20130520 23:31:22
Simple Formula Based problem 
Added by:  Pablo Ariel Heiber 
Date:  20100813 
Time limit:  0.191s 
Source limit:  50000B 
Memory limit:  1536MB 
Cluster:  Cube (Intel G860) 
Languages:  All except: NODEJS OBJC PERL6 VB.NET 
Resource:  FCEyN UBA ICPC Selection 2007 