概率 数学期望 HDU - 5245

北战南征 提交于 2019-12-04 13:59:04

hdu5245
**行不同时在上或下
和列不同时在左或右
再相乘,算出被选上的概率,然后1减去就是不被选上的概率,再k次方,就是k次都不被选上的概率,然后1再
减去,就是k次被选上的概率,ans+上每个块的概率,就是总的。

**

#include <cstdio>
#include <iostream>
#include <algorithm>
#include <math.h>
using namespace std;

int main()
{
    int t;
    scanf("%d",&t);
    int m,n,k;
    for(int CASE=1;CASE<=t;CASE++){
        scanf("%d%d%d",&m,&n,&k);
        double ans = 0;
        for(int i=1;i<=m;i++){
            for(int j=1;j<=n;j++){
                double x = (1.0-((i-1)*(i-1)+(m-i)*(m-i))/(double)(m*m))*(1.0-((j-1)*(j-1)+(n-j)*(n-j))/(double)(n*n));
                ans+=1-pow(1.0-x,(double)k);
            }
        }
        printf("Case #%d: %d\n",CASE,(int)round(ans));
    }
    return 0;
}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!