#include #include #include #include #include #include #include #include #include #include #include #include using namespace std; using ll = long long; using ld = long double; ld p, q; ld f(ld x) { return pow(x, 2) - q * x * log2l(x) - p; } ld g(ld x) { return 2 * x - q * (log2l(x) - logl(2)); } int main(){ cin >> p >> q; const double eps = 1e-08; const int limit = 5000000; ld x, dx; ld a, b, c; a = 1; b = 1001001001001001001.0; while(fabs(a - b) > eps){ c = (a + b) / 2; if(f(c) == 0){ break; } if(f(a) * f(c) < 0){ b = c; } if(f(a) * f(c) > 0){ a = c; } } printf("%.10Lf\n", c); return 0; }