#include <bits/stdc++.h>
using namespace std;
#define rep(i,n) for (int i = 0; i < (n); ++i)
#define Inf 1000000000

using P = pair<long double,long double>;

P merge(P a,P b){
	long double temp = a.first*b.first;
	temp = 1.0-temp;
	temp = 1.0/temp;
	
	P ret;
	ret.first = a.first;
	ret.first += temp * a.second * a.second * b.first;
	ret.second = temp * a.second * b.second;
	return ret;
	
}

int main(){
	
	int N;
	cin>>N;
	
	long double p,q;
	cin>>p>>q;
	
	if(p==1.0){
		cout<<p<<endl;
		return 0;
	}
	
	vector<P> x(12);
	rep(i,12){
		if(i==0)x[i] = make_pair(p,q);
		else x[i] = merge(x[i-1],x[i-1]);
	}
	
	P ans = x[0];
	N--;
	
	rep(i,12){
		if(N&1){
			ans = merge(ans,x[i]);
		}
		N/=2;
	}
	
	cout<<fixed<<setprecision(10)<<ans.first<<endl;
	
	
	return 0;
}