#include<iostream>
#include<iomanip>
#include<cmath>
#include<string>
#include<vector>
#include<algorithm>
#include<map>
#include<set>
#include<queue>
#include<stack>
using namespace std;
typedef long long ll;
#define fi first
#define se second
#define mp make_pair
const int inf=1e9+7;
const ll mod=1e9+7;

int main() {
    ll P, Q;
    cin>>P>>Q;
    double l, m, r;
    l = 0;
    r = 1e20;
    for(int i=0;i<1000000;++i){
        m = (l+r)/2;
        if(P+Q*m*log2(m)-m*m>0){
            l = m;
        }
        else{
            r = m;
        }
    }
    cout<<setprecision(20)<<l<<endl;
}