题目链接:http://acm.sgu.ru/problem.php?contest=0&problem=385

题意:

思路:

double f[N][N][N],g[N][N],A[N][N];
int n;

void init()
{
    int i,j;
    for(i=2;i<=100;i++)
    {
        A[i][1]=i;
        for(j=2;j<=i;j++) A[i][j]=A[i][j-1]*(i+1-j);
    }
}

double DFS(int,int,int);

double dfs(int i,int j)
{
    if(g[i][j]>=0) return g[i][j];
    if(j>i) return 0;
    int k;
    g[i][j]=0;
    for(k=1;k*j<=i;k++) g[i][j]+=DFS(i,j,k);
    return g[i][j];
}

double DFS(int i,int j,int k)
{
    if(f[i][j][k]>=0) return f[i][j][k];
    if(i<=1||j<=1||k<=0||k*j>i||i<j) return 0;
    if(i==j&&k==1) return A[n][i]/i;
    f[i][j][k]=DFS(i-j,j,k-1)*A[n-i+j][j]/j/k;
    if(k==1)
    {
        int t,L=min(j-1,i-j);
        double temp=A[n-i+j][j]/j;
        for(t=2;t<=L;t++) f[i][j][k]+=dfs(i-j,t)*temp;
    }
    return f[i][j][k];
}

int main()
{
    init();
    Rush(n)
    {
        clr(f,-1); clr(g,-1);
        double s1=0,s2=0;
        int j,k;
        for(j=2;j<=n;j++) for(k=1;k<=n;k++)
        {
            s1+=j*k*DFS(n,j,k);
            s2+=DFS(n,j,k);
        }
        double ans=s1/s2;
        printf("%.10lf\n",ans);
    }
}

  

SGU 385 Highlander(期望)的更多相关文章

  1. SGU 495 Kids and Prizes:期望dp / 概率dp / 推公式

    题目链接:http://acm.sgu.ru/problem.php?contest=0&problem=495 题意: 有n个礼物盒,m个人. 最开始每个礼物盒中都有一个礼物. m个人依次随 ...

  2. sgu 495. Kids and Prizes (简单概率dp 正推求期望)

    题目链接 495. Kids and Prizes Time limit per test: 0.25 second(s)Memory limit: 262144 kilobytes input: s ...

  3. SGU 495. Kids and Prizes( 数学期望 )

    题意: N个礼品箱, 每个礼品箱内的礼品只有第一个抽到的人能拿到. M个小孩每个人依次随机抽取一个,  求送出礼品数量的期望值. 1 ≤ N, M ≤ 100, 000 挺水的说..设f(x)表示前x ...

  4. 【SGU】495. Kids and Prizes

    http://acm.sgu.ru/problem.php?contest=0&problem=495 题意:N个箱子M个人,初始N个箱子都有一个礼物,M个人依次等概率取一个箱子,如果有礼物则 ...

  5. SGU 176 Flow construction(有源汇上下界最小流)

    Description 176. Flow construction time limit per test: 1 sec. memory limit per test: 4096 KB input: ...

  6. 【专题】概率期望DP

    11.22:保持更新状态:主要发一些相关的题目和个人理解 (P.S.如果觉得简单,可以直接看后面的题目) upd 11.30 更完了 [NO.1] UVA12230 Crossing Rivers  ...

  7. 【BZOJ-3143】游走 高斯消元 + 概率期望

    3143: [Hnoi2013]游走 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 2264  Solved: 987[Submit][Status] ...

  8. bzoj1415[NOI2005]聪聪和可可-期望的线性性

    这道题之前我写过一个巨逗比的写法(传送门:http://www.cnblogs.com/liu-runda/p/6220381.html) 当时的原因是这道题可以抽象出和"绿豆蛙的归宿&qu ...

  9. hdu 4481 Time travel(高斯求期望)(转)

    (转)http://blog.csdn.net/u013081425/article/details/39240021 http://acm.hdu.edu.cn/showproblem.php?pi ...

随机推荐

  1. 2012 Asia Chengdu Regional Contest

    Browsing History http://acm.hdu.edu.cn/showproblem.php?pid=4464 签到 #include<cstdio> #include&l ...

  2. shiro中unauthorizedUrl不起作用

    解决方法: 在shiro配置文件中添加(异常全路径做key,错误页面做value) <bean class="org.springframework.web.servlet.handl ...

  3. 对话机器学习大神Yoshua Bengio(上)

    Yoshua Bengio教授(个人主页)是机器学习大神之一,尤其是在深度学习这个领域.他连同Geoff Hinton老先生以及 Yann LeCun(燕乐存)教授,缔造了2006年开始的深度学习复兴 ...

  4. [百度空间] [原] 全局operator delete重载到DLL

    由于很久没有搞内存管理了,很多细节都忘记了今天项目要用到operator delete重载到DLL,发现了问题,网上搜索以后,再对比以前写的代码,发现了问题:原来MSVC默认的operator new ...

  5. sprytabbedpanels.js库之在页面中插入Tabbed Panels

    向页面加入sprytabbedpanels.js文件.<script src="SpryAssets/SpryTabbedPanels.js" type="text ...

  6. sublime text3 插件安装

    安装Package control 先打开安装代码的命令行 按 ctrl+~或者 view  -> show console 将下面的代码粘贴到输入框里 按回车 import urllib.re ...

  7. 驱动笔记 - file_operations

    #include <linux/fs.h> struct file_operations { struct module *owner; loff_t (*llseek) (struct ...

  8. 服务端发送xml请求java代码示例

    /** * */ package com.autoyol.pay.cmb.core; import java.io.ByteArrayOutputStream; import java.io.IOEx ...

  9. C#中的可空类型

    public class Person { public DateTime birth; public DateTime? death; string name; public TimeSpan Ag ...

  10. 控制台应用程序的Main方法

    总结一下Main方法规则: 1.Main 方法名大小写有规范. 2.Main 方法返回类型只有 void.int两种返回类型. 3.Main 方法的参数可以是string[] args,也可以为空,只 ...