#include using namespace std; typedef long long ll; typedef pair Pint; typedef pair P; //typedef pair> P; //typedef tuple T; ll INFL = 1000000000000000010;//10^18 = 2^60 int INF = 2147483600;//10^9 ll MOD = 1000000007; vector dy = {0,0,1,-1}; vector dx = {1,-1,0,0}; //約数の個数の列挙 //nlogn vector num_divisors_list(int n){ vector num(n+1); for(int i = 1; i <= n; i++){ for(int j = i; j <= n; j += i){ num[j]++; } } return num; } int main(void){ int N; double p; cin >> N >> p; double ans = 0.0; vector num = num_divisors_list(1000010); for(int i = 2; i <= N; i++){ int x = num[i]; x -= 2; ans += pow((1.0-p), x); } cout << fixed << setprecision(10) << ans << endl; }