zoukankan      html  css  js  c++  java
  • 【BZOJ】3093: [Fdu校赛2012] A Famous Game

    http://www.lydsy.com/JudgeOnline/problem.php?id=3093

    题意:n个球(红和蓝两种),等概率有1~n个红球。首先取出p个球且这p个球里边有q个红球,问从剩下的球里边取一个红球的概率(n<=100000)

    #include <cstdio>
    using namespace std;
    int main() {
    	int T=0, p, n, q;
    	while(~scanf("%d%d%d", &n, &p, &q)) printf("Case %d: %.4f
    ", ++T, (q+1.0)/(p+2.0));
    	return 0;
    }
    

      

    推完后公式能力大幅增长= =

    感谢vfk的指导让我知道了一些关于高中课本的知识= =(haha我比小学森还差

    感谢算法导论上概率论的知识

    感谢××年××的关于概率论的一些论文....

    感谢quartergeek的题解

    感谢gyz的题解

    然后好不容易推出了公式....最终化简极其漂亮...数学好美丽...

    如果看不懂下边的公式,欢迎来问我!!!qq在右边!!

    设$A$为下一个拿红球的事件,$B$为拿走了$p$个球其中有$q$个球是红球的事件,$C_k$为原袋子中有$k$个红球的事件

    $$
    egin{align}
    P(A|B)
    & = frac{ P(AB) }{ P(B) } \
    & = frac{ sum_{k=0}^{n} P(AB|C_k)P(C_k) }{ sum_{k=0}^{n} P(B|C_k)P(C_k) }
    end{align}
    $$

    因为
    $$
    P(AB|C_k)
    =
    frac{P(BC_k)}{P(C_k)}
    frac{P(ABC_k)}{P(BC_k)}
    =
    P(B|C_k)P(A|BC_k)
    $$

    所以
    $$
    egin{align}
    P(A|B)
    & = frac{ sum_{k=0}^{n} P(AB|C_k)P(C_k) }{ sum_{k=0}^{n} P(B|C_k)P(C_k) } \
    & = frac{ sum_{k=0}^{n} P(B|C_k)P(A|BC_k)P(C_k) }{ sum_{k=0}^{n} P(B|C_k)P(C_k) } \
    end{align}
    $$

    显然
    $$
    egin{align}
    P(A|BC_k) & = frac{k-q}{n-p} \
    P(C_k) & = frac{1}{n+1} \
    P(B|C_k) & = frac{ inom{k}{q} inom{n-k}{p-q} }{ inom{n}{p} }
    end{align}
    $$

    所以
    $$
    egin{align}
    P(A|B)
    & = frac{ sum_{k=0}^{n} P(B|C_k)P(A|BC_k)P(C_k) }{ sum_{k=0}^{n} P(B|C_k)P(C_k) } \
    & = frac{ sum_{k=0}^{n} inom{k}{q} inom{n-k}{p-q} (k-q) }{ sum_{k=0}^{n} inom{k}{q} inom{n-k}{p-q} (n-p) } \
    & = frac{ sum_{k=0}^{n} inom{k}{q+1} inom{n-k}{p-q} (q+1) }{ sum_{k=0}^{n} inom{k}{q} inom{n-k}{p-q} (n-p) } \
    & = frac{q+1}{n-p} frac{ sum_{k=0}^{n} inom{k}{q+1} inom{n-k}{(p+1)-(q+1)} }{ sum_{k=0}^{n} inom{k}{q} inom{n-k}{p-q} } \
    & = frac{q+1}{n-p} frac{ inom{n+1}{p+2} }{ inom{n+1}{p+1} } \
    & = frac{q+1}{p+2}
    end{align}
    $$

    哦,关于$inom{n+1}{p+1} = sum_{k=0}^{n} inom{k}{q} inom{n-k}{p-q}$窝来解释一下...

    考虑$p+1$个球放在$n+1$个格子中,那么等价于枚举第$q+1$个球放的格子$k+1$,则前面有$k$个格子,后面则有$n-k$个格子。那么前面有$q$个球方案数为$inom{k}{q}$,后面有$p-q$个球的方案数为$inom{n-k}{p-q}$。乘起来即可。

  • 相关阅读:
    建议自学
    大牛之术
    学习榜样
    .net源码
    练习题
    学习-如何克服拖延
    如何解决困难问题
    最近阅读
    如何学习一门新语言
    安全问题关注博客
  • 原文地址:https://www.cnblogs.com/iwtwiioi/p/4304606.html
Copyright © 2011-2022 走看看