#include #include int main() { int N; double p; scanf("%d %lf", &N, &p); std::vector zaru(N+1, 1.0); double res = 0; for (int i = 2; i <= N; ++i) { res += zaru[i]; for (int j = i+i; j <= N; j += i) zaru[j] *= 1-p; } for (int i = 2; i <= N; ++i) fprintf(stderr, "%2d: %.6f\n", i, zaru[i]); printf("%.12f\n", res); }