Description:
n∗m
n
∗
m
的网格,每次选择一个矩形染黑,问最后期望染黑格子个数。
Solution:
由于期望可加,所以我们单独算每个格子的贡献。计算每个格子不被染黑的概率,加起来即可。
#include <bits/stdc++.h>
using namespace std;
int n, m, k;
double ans;
double s(double x) {
return x * x;
}
int main() {
scanf("%d%d%d", &k, &n, &m);
for(int i = 1; i <= n; ++i) {
for(int j = 1; j <= m; ++j) {
ans += 1.0 - pow((s((i - 1) * m) + s(n * (j - 1)) + s(m * (n - i)) + s(n * (m - j)) - s((i - 1) * (j - 1)) - s((n - i) * (j - 1)) - s((i - 1) * (m - j)) - s((n - i) * (m - j))) / s(n * m), k);
}
}
printf("%.0f\n", round(ans));
return 0;
}