博客
关于我
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 表的操作
查看>>
mysql 视图,视图更新删除
查看>>
MySQL 触发器
查看>>
mysql 让所有IP访问数据库
查看>>
mysql 记录的增删改查
查看>>
MySQL 设置数据库的隔离级别
查看>>
MySQL 证明为什么用limit时,offset很大会影响性能
查看>>
Mysql 语句操作索引SQL语句
查看>>
MySQL 误操作后数据恢复(update,delete忘加where条件)
查看>>
MySQL 调优/优化的 101 个建议!
查看>>
mysql 转义字符用法_MySql 转义字符的使用说明
查看>>
mysql 输入密码秒退
查看>>
mysql 递归查找父节点_MySQL递归查询树状表的子节点、父节点具体实现
查看>>
mysql 通过查看mysql 配置参数、状态来优化你的mysql
查看>>
mysql 里对root及普通用户赋权及更改密码的一些命令
查看>>
Mysql 重置自增列的开始序号
查看>>
mysql 锁机制 mvcc_Mysql性能优化-事务、锁和MVCC
查看>>
MySQL 错误
查看>>
mysql 随机数 rand使用
查看>>
MySQL 面试题汇总
查看>>