博客
关于我
HDU 5194 DZY Loves Balls
阅读量:437 次
发布时间:2019-03-06

本文共 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


Problem Description
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
.
 

Input
The input consists several test cases. (
TestCase150
)
The first line contains two integers, 
n
m(1n,m12)
 

Output
For each case, output the corresponding result, the format is 
p/q
(
p
 and 
q
 are coprime)
 

Sample Input
1 12 3
 

Sample Output
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
#include
#include
#include
using namespace std;#define MAX 0x3f3f3f3f#define MIN -0x3f3f3f3f#define PI 3.14159265358979323#define N 1005int gcd(int n, int m){ int temp; if (m > n) swap(m, n); if (m == 1 || n == 1) return 1; temp = n%m; while (temp != 0) { n = m; m = temp; temp = n%m; } return m;}int main(){ int n, m; int num; int nn, mm; while (scanf("%d%d", &n, &m) != EOF) { nn = m*n; mm = m + n; num = gcd(nn, mm); printf("%d/%d\n", nn / num, mm / num); } return 0;}

转载地址:http://fojyz.baihongyu.com/

你可能感兴趣的文章
MySQL-Explain的详解
查看>>
mysql-group_concat
查看>>
MySQL-redo日志
查看>>
MySQL-【1】配置
查看>>
MySQL-【4】基本操作
查看>>
Mysql-丢失更新
查看>>
Mysql-事务阻塞
查看>>
Mysql-存储引擎
查看>>
mysql-开启慢查询&所有操作记录日志
查看>>
MySQL-数据目录
查看>>
MySQL-数据页的结构
查看>>
MySQL-架构篇
查看>>
MySQL-索引的分类(聚簇索引、二级索引、联合索引)
查看>>
Mysql-触发器及创建触发器失败原因
查看>>
MySQL-连接
查看>>
mysql-递归查询(二)
查看>>
MySQL5.1安装
查看>>
mysql5.5和5.6版本间的坑
查看>>
mysql5.5最简安装教程
查看>>
mysql5.6 TIME,DATETIME,TIMESTAMP
查看>>