n,p=input().split() n=int(n) p=1-float(p) mat=[0]*(n+1) # mat[i]:iが素数リストに残るために飛ばさないといけない処理の回数 ans=0 for i in range(2,n+1): ii=i+i while ii<=n: mat[ii]+=1 ii+=i ans+=pow(p,mat[i]) print(ans) #print([pow(p,x) for x in mat])