BZOJ 1419: Red is good|期望Dp

仰慕ws_fqk神犇

#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<iostream>
#include<algorithm>
#include<queue>
#include<vector>
#include<set>
#include<map>
#define MX 1e9
#define lowbit(x) (x&(-x))
using namespace std;
double f[2][5005];
int n,m;
int main()
{
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++)
        for(int j=0;j<=m;j++)
        {
            if(!j)f[i&1][j]=i;
            else f[i&1][j]=max(0.0,(double)i/(i+j)*(1+f[(i&1)^1][j])+(double)j/(i+j)*(-1+f[i&1][j-1]));
        }
    printf("%.6lf",f[n&1][m]-5e-7);
    return 0;
}

你可能感兴趣的:(概率与期望)