zoukankan      html  css  js  c++  java
  • dp算期望(有聊变无聊人的期望)

    从这里可以发现 只要知道递推方程,就可以把dp的过程用记忆化递归表示出来
    其实记忆化bfs 记忆化递归 ……只要是计算某种状态后,将其保存下来的过程,都是dp!!!
    View Code
    #include<stdio.h>

    double dp[200][200];

    double di(int n,int m)
    {
    if(dp[n][m]!=-1)
    return dp[n][m];
    if(m==0)
    return dp[n][m]=0;
    if(m==1)
    return dp[n][m]=(n+1)*1.0/2;
    if(n==0)
    return dp[n][m]=1.0*di(2,m-2)+1;
    if(n==1)
    return dp[n][m]=1.0*(m*di(2,m-1)+m*(m-1)/2*di(3,m-2))*1.0/((m+1)*m/2)+1;

    return dp[n][m]=1.0*(di(n+1,m-1)*n*m+di(n+2,m-2)*m*(m-1)/2)*1.0/(n*m+m*(m-1)/2)+1+1.0*(n-1)*n/2/(n*m+(m*(m-1)/2));
    }

    int main()
    {
    int n,m;
    while(scanf("%d%d",&n,&m),n||m)
    {
    double t;

    int i,j;
    for(i=0;i<=100;i++)
    {
    for(j=0;j<=100;j++)
    {
    dp[i][j]
    =-1;
    }
    }

    printf(
    "%.2lf\n",di(n,m));
    }
    }
  • 相关阅读:
    java--volatile关键字
    java--线程异常处理器
    java--线程池
    Supervisor安装和使用
    网络协议--HTTP
    1.Nginx简介
    Nginx配置实战
    Redis面试题
    SpringBoot--集成swagger2
    缓存的优缺点
  • 原文地址:https://www.cnblogs.com/huhuuu/p/1985450.html
Copyright © 2011-2022 走看看