#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; using lint = long long int; long long int INF = 1001001001001001LL; int inf = 1000000007; long long int MOD = 1000000007LL; double PI = 3.1415926535897932; templateinline void chmin(T1 &a,const T2 &b){if(a>b) a=b;} templateinline void chmax(T1 &a,const T2 &b){if(a> p >> q; double ub = 1e18; double lb = 1.0; for (int ii = 0; ii < 10000; ii++) { double mid = (ub + lb) / 2.0; double t1 = mid * mid; double t2 = p + q * mid * lo(mid); if (t1 <= t2) { lb = mid; } else { ub = mid; } } printf("%.10f\n", lb); return 0; }