#include<bits/stdc++.h> using namespace std; typedef long long ll; typedef long double ld; template<class T>bool chmax(T &a, const T &b) { if (a<b) { a=b; return 1; } return 0; } template<class T>bool chmin(T &a, const T &b) { if (b<a) { a=b; return 1; } return 0; } const ll INF=1LL<<60; const int inf=1<<30; const int mod=1e9+7; int main(){ cin.tie(0); ios::sync_with_stdio(false); ld p,q;cin >> p >> q; ld l=1,r=INF; for(int i=0;i<1000000;i++){ ld mid=(l+r)/2; if(p+q*mid*log2(mid)>mid*mid){ l=mid; } else{ r=mid; } } cout << fixed << setprecision(10) << l << endl; }