#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; /* const int bingo[] = { 32505856, 1015808, 31744, 992, 31, 17318416, 8659208, 4329604, 2164802, 1082401, 17043521, 1118480 }; int ans[30]; int bns[30]; int main(void){ ofstream cout("out.txt"); for (int i = 0; i < (1<<25); i++){ int cnt = 0; for (int j = 0; j < 30; j++){ if ((1 << j)&i)cnt++; } int res = 0; for (int j = 0; j < 12; j++){ if ((i&bingo[j]) == bingo[j])res++; } bns[cnt]++; ans[cnt] += res; } for (int i = 0; i < 30; i++){ cout << ans[i] <<"/(double)" <> N; double res=0; double all=0; for (int i = 0; i <= min(N,25); i++){ double p = 1; for (int j = 0; j < i; j++){ p *= N - j; p /= (j + 1); } //cout << p << endl; all += p; res += p*umekomi[i]; } //cout << all << endl; cout << res / all << endl; }