【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\n", ++T, (q+1.0)/(p+2.0));
return 0;
}
推完后公式能力大幅增长= =
感谢vfk的指导让我知道了一些关于高中课本的知识= =(haha我比小学森还差
感谢算法导论上概率论的知识
感谢××年××的关于概率论的一些论文....
感谢quartergeek的题解
感谢gyz的题解
然后好不容易推出了公式....最终化简极其漂亮...数学好美丽...
如果看不懂下边的公式,欢迎来问我!!!qq在右边!!
设$A$为下一个拿红球的事件,$B$为拿走了$p$个球其中有$q$个球是红球的事件,$C_k$为原袋子中有$k$个红球的事件
$$
\begin{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)
$$
所以
$$
\begin{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}
$$
显然
$$
\begin{align}
P(A|BC_k) & = \frac{k-q}{n-p} \\
P(C_k)    & = \frac{1}{n+1}   \\
P(B|C_k)  & = \frac{ \binom{k}{q} \binom{n-k}{p-q} }{ \binom{n}{p} }
\end{align}
$$
所以
$$
\begin{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} \binom{k}{q} \binom{n-k}{p-q} (k-q) }{ \sum_{k=0}^{n} \binom{k}{q} \binom{n-k}{p-q} (n-p) } \\
& = \frac{ \sum_{k=0}^{n} \binom{k}{q+1} \binom{n-k}{p-q} (q+1) }{ \sum_{k=0}^{n} \binom{k}{q} \binom{n-k}{p-q} (n-p) } \\
& = \frac{q+1}{n-p} \frac{ \sum_{k=0}^{n} \binom{k}{q+1} \binom{n-k}{(p+1)-(q+1)} }{ \sum_{k=0}^{n} \binom{k}{q} \binom{n-k}{p-q} } \\
& = \frac{q+1}{n-p} \frac{ \binom{n+1}{p+2} }{ \binom{n+1}{p+1} } \\
& = \frac{q+1}{p+2}
\end{align}
$$
哦,关于$\binom{n+1}{p+1} = \sum_{k=0}^{n} \binom{k}{q} \binom{n-k}{p-q}$窝来解释一下...
考虑$p+1$个球放在$n+1$个格子中,那么等价于枚举第$q+1$个球放的格子$k+1$,则前面有$k$个格子,后面则有$n-k$个格子。那么前面有$q$个球方案数为$\binom{k}{q}$,后面有$p-q$个球的方案数为$\binom{n-k}{p-q}$。乘起来即可。
【BZOJ】3093: [Fdu校赛2012] A Famous Game的更多相关文章
- BZOJ 3093: [Fdu校赛2012] A Famous Game
		3093: [Fdu校赛2012] A Famous Game Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 242 Solved: 129[Subm ... 
- Bzoj3093 [Fdu校赛2012] A Famous Game
		Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 251 Solved: 136 Description Mr. B and Mr. M like to ... 
- 【BZOJ】【3093】【FDU校赛2012】A Famous Game
		概率论 神题不会捉啊……挖个坑先 orz 贾教 & QuarterGeek /********************************************************* ... 
- 2016 华南师大ACM校赛 SCNUCPC 非官方题解
		我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ... 
- SCNU省选校赛第二场B题题解
		今晚的校赛又告一段落啦,终于"开斋"了! AC了两题,还算是满意的,英语还是硬伤. 来看题目吧! B. Array time limit per test 2 seconds me ... 
- 2014上半年acm总结(1)(入门+校赛)
		大一下学期才开始了acm,不得不说有一点迟,但是acm确实使我的生活充实了很多,,不至于像以前一样经常没事干= = 上学期的颓废使我的c语言学的渣的一笔..靠考前突击才基本掌握了语法 寒假突然醒悟, ... 
- 2017CUIT校赛-线上赛
		2017Pwnhub杯-CUIT校赛 这是CUIT第十三届校赛啦,也是我参加的第一次校赛. 在被虐到崩溃的过程中也学到了一些东西. 这次比赛是从5.27早上十点打到5.28晚上十点,共36小时,中间睡 ... 
- HZNU第十二届校赛赛后补题
		愉快的校赛翻皮水! 题解 A 温暖的签到,注意用gets #include <map> #include <set> #include <ctime> #inclu ... 
- 校赛F
		问题描述 例如对于数列[1 2 3 4 5 6],排序后变为[6 1 5 2 4 3].换句话说,对于一个有序递增的序列a1, a2, a3, ……, an,排序后为an, a1, an-1, a2, ... 
随机推荐
- 通过url获取图片尺寸的几种方法:JS和php
			首先是js的方法,通过new一个Image对象,设置src属性,并监听complete和onload事件,图片加载完成后输出图片的宽度和高度 function checkPicurl(url){ va ... 
- 无废话ExtJs 入门教程十六[页面布局:Layout]
			无废话ExtJs 入门教程十六[页面布局:Layout] extjs技术交流,欢迎加群(201926085) 首先解释什么是布局: 来自百度词典的官方解释:◎ 布局 bùjú: [distributi ... 
- <转>Hibernate的优、缺点(局限性)
			本文原文链接:http://hi.baidu.com/ko22223/item/dd9f6900015adc036d904877 一.Hibernate是JDBC的轻量级的对象封装,它是一个独立的对象 ... 
- Oracle 【IT实验室】数据库备份与恢复之:如何对Oracle数据库文件进行恢复与备份
			任何数据库在长期使用过程中,都会存在一定的安全隐患.对于数据库管理员来说不能仅寄希望于计算机操作系统的安全运行,而是要建立一整套的数据库备份与恢复机制.当数据库发生故障后,希望能重新建立一个完整的数据 ... 
- js setTimeout运用
			js setTimeout运用 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "ht ... 
- php+jquery+ajax实现用户名验证
			大多数情况下,jquery代码的编写,都要求我们将jquery的代码放在以下三种中任一个function里. 有三种写法,同样效果,有点像Window.onload,但也有不同,就是window.on ... 
- iOS和Android的app界面设计规范(转)
			记录一下iOS和Andoird的界面设计规范,方便进行标准的产品设计,并与设计师顺畅沟通 iOS篇 界面尺寸 设备 分辨率 状态栏高度 导航栏高度 标签栏高度 iPhone6 plus 1242×22 ... 
- visio如何让动态连接线的单箭头变成双箭头?
			1 选中线,右击,然后选择“格式”,“线条” 2 3 
- IIS配置php运行环境默认加载的php.ini路径
			第一步: 把PHP的安装路径添加到环境变量Path中,右键 “我的电脑” -> 高级 -> 环境变量 -> 系统变量,追加 D:PHP-5.2.8\; 第二步: 新建“系统变量” P ... 
- ubuntu12.04 安装eclipse
			1:去官网下载最新版的eclipse for linux; 2:cd /usr/local 用命令 sudo mkdir eclipse 建立一个Eclipse的目录 3:将下载的文件copy到ec ... 
