• 概率dp——cf518D


    通过最后的概率求最终的期望

    #include<bits/stdc++.h>
    using namespace std;
    
    const int maxn = 2005;
    
    double p,dp[maxn][maxn];
    
    int n,t;
    
    int main(){
        cin>>n>>p>>t;
        dp[0][n]=1;
        for(int i=1;i<=t;i++){
            dp[i][0]=dp[i-1][0]+dp[i-1][1]*p;
            for(int j=1;j<=n;j++)
                dp[i][j]=dp[i-1][j]*(1-p)+dp[i-1][j+1]*p;
        }
        double ans=0;
        for(int i=0;i<=n;i++)
            ans+=1.0*dp[t][i]*(n-i);
        printf("%.10lf
    ",ans);
    }
  • 相关阅读:
    第一轮 J
    第一轮 M
    第一轮 L
    第一轮 K
    第一轮 I
    第一轮 H
    第一轮 F
    第一轮 E
    第一轮 C
    12杭州online E 模拟
  • 原文地址:https://www.cnblogs.com/zsben991126/p/11070452.html
Copyright © 2020-2023  润新知