#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define repr(i, a, b) for (int i = (int)(a); i < (int)(b); i++) #define rep(i, n) repr(i, 0, n) #define INF 2e9 #define MOD 1000000007 //#define MOD 998244353 #define LINF (long long)4e18 #define jck 3.141592 const double EPS = 1e-10; using ll = long long; using Pi = pair; using Pl = pair; set divisor(ll n){ set s; for(ll i = 1; i*i <= n; i++){ if(n % i == 0){ if(i != 1) s.insert(i); if(i != 1) s.insert(n/i); } } return s; } double Pow(double a, int n){ if(n == 0) return 1; double half = Pow(a,n/2); double res = half * half; if(n & 1) res = res * a; return res; } int main(){ cout << fixed << setprecision(7); int N; cin >> N; double p; cin >> p; double ans = 0; repr(i,2,N+1){ set div = divisor(i); double now = 1.0; now *= Pow(1-p,(int)div.size()); ans += now; } cout << ans << endl; }