本文共 1932 字,大约阅读时间需要 6 分钟。
DZY Loves Balls
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 807 Accepted Submission(s): 439 There are
n black balls and
m white balls in the big box.
Now, DZY starts to randomly pick out the balls one by one. It forms a sequence
S . If at the
i -th operation, DZY takes out the black ball,
Si=1 , otherwise
Si=0 .
DZY wants to know the expected times that '01' occurs in
S .
The input consists several test cases. (
TestCase≤150 )
The first line contains two integers,
n ,
m(1≤n,m≤12) For each case, output the corresponding result, the format is
p/q (
p and
q are coprime)
1/26/5 Hint Case 1: S='01' or S='10', so the expected times = 1/2 = 1/2Case 2: S='00011' or S='00101' or S='00110' or S='01001' or S='01010' or S='01100' or S='10001' or S='10010' or S='10100' or S='11000',so the expected times = (1+2+1+2+2+1+1+1+1+0)/10 = 12/10 = 6/5
给你n个黑球,m个白球,黑球标记为1,白球标记为0,问在所有的组合当中一共出现了多少个“01”串。
用概率统计的角度讲,这就是一个n重的伯努利试验。首先,确定一个随机变量。
设置为Xi,则在Xi位置上出现白球,并在X(i+1)位置上出现黑球的概率是p=(m/(n+m))*(n/(n+m-1))。这就是出现01串的概率,否则其他的情况概记为q=1-p。
即Xi只有两种状态,出现01串为1,否则为0。如下图所示。
这就是一个最为简单的二项分布了,以为Xi的取值是从1-(m+n-1)的。
得E(X)=(m/(m+n))*(n/(n+m-1))*(n+m-1)=(m*n)/(m+n)。
程序里面需要求的就是m*n和m+n的最大公约数化简了。
#include #include #include #include #include #include #include
转载地址:http://fojyz.baihongyu.com/