#include #define rep(i,n) for(int i = 0; i < (n); ++i) #define srep(i,s,t) for (int i = s; i < t; ++i) #define drep(i,n) for(int i = (n)-1; i >= 0; --i) using namespace std; typedef long long int ll; typedef pair P; #define yn {puts("YES");}else{puts("NO");} #define MAX_N 200005 int main() { double p, q; cin >> p >> q; double l = 1, r = 1e15; int loop = 0; while(loop < 1000){ loop++; double m = (l + r) / 2; if(m*m <= p+q*m*log2(m)) l = m; else r = m; } cout << fixed << setprecision(10) << l << endl; return 0; }