测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A10018. A Problem about Polyline

编程题 普及/提高-

题目描述

There is a polyline going through points $(0,0)–(x,x)–(2x,0)–(3x,x)–(4x,0)–...-(2kx,0)–(2kx+x,x)–...$ .

We know that the polyline passes through the point $(a,b)$ . Find minimum positive value $x$ such that it is true or determine that there is no such $x$ .

输入格式

Only one line containing two positive integers $a$ and $b$ ( $1<=a,b<=10^{9}$ ).

输出格式

Output the only line containing the answer. Your answer will be considered correct if its relative or absolute error doesn't exceed $10^{-9}$ . If there is no such $x$ then output $-1$ as the answer.

输入输出样例

输入 #1
3 1
输出 #1
1.000000000000
输入 #2
1 3
输出 #2
-1
输入 #3
4 1
输出 #3
1.250000000000

说明/提示

You can see following graphs for sample 1 and sample 3.

![](/uploads/luogu/CF578A/abf33c2e979ad11f626e45babf5d2a8a224a3964_38005020d1bf.png) ![](/uploads/acgo/image/434d91d3c1e3eb7d_488a8b6ee05f.jpeg)
上一题 去做题 下一题