#include <iostream> #include <string> #include <vector> #include <algorithm> #include <numeric> #include <cmath> #include <queue> #include <tuple> #include <set> #include <map> using namespace std; int main(void) { double P, Q; cin >> P >> Q; double low = 1.0, high = 1e12; for(int i=0; i<100; i++) { double mid = (low + high) * 0.5; if(mid*mid < P + Q * mid * log2(mid)) { low = mid; } else { high = mid; } } printf("%lf\n", low); return 0; }