#include <bits/stdc++.h> #define rep(i,a,b) for(int i=int(a);i<=int(b);++i) using namespace std; template<class A>void pr(A a){cout << (a) << endl;} template<class A,class B>void pr(A a,B b){cout << a << " " ;pr(b);} template<class A,class B,class C>void pr(A a,B b,C c){cout << a << " " ;pr(b,c);} template<class A,class B,class C,class D>void pr(A a,B b,C c,D d){cout << a << " " ;pr(b,c,d);} typedef long long ll; typedef pair<ll, ll> l_l; typedef pair<int, int> i_i; int INF=numeric_limits<int>::max(); // for(int j=0;j<N;++j) { double func(double x, ll p, ll q) { return x*x-q*x*log2(x)-p; } double dfunc(double x, ll q) { return 2*x-q*(log2(x)+1.0/log(2))-1; } int main(void) { ll p,q;cin>> p >> q; double x = 100*q + p; int cnt=10000000; while(abs(func(x,p,q))>0.000001) { x = x - func(x,p,q) / dfunc(x,q); cnt--; if(cnt<0) { break; } } printf("%8.8f\n", x); return 0; }