|
|

楼主 |
发表于 2018-5-6 11:55
|
显示全部楼层
这个游戏好像很古老了,十多年前就有,现在规则基本也没变化;
一般两个人,每个5个散子;各自猜大家总共至少有几个几;
对方报出一个数,两种可能性:
1.你认为对方报的数字的可能性概率很小,就可以提出结束;如果对方对就他赢,否者就自己赢;
2.你认为对方报的数字的可能性概率挺大,就继续往上报;直到有一方提出结束;
(一个重要的原则是1点是百搭,可以看作任意数)
输了的后果,一般是被罚酒;虽然尔虞我诈是重点, 但是利用点三家猫的数学知识稍微研究一下概率,也许能增加赢面,
不要输的惨不忍睹就行;
比如:你有4个3(1是百搭,可以认为也是3); 那么你觉得对方至少有1个3的概率是多少呢?2个3的概率多少呢?...
根据概率知识,做一个大致的估算;从感觉上来说,你叫5个3的准确性的概率是很高的,可能有90%;
6个3的概率感觉上也有一半吧? 7个3 ?8个3? 这些概率概率到底是多少?
不计算一下,还是心里没底的;
因为考虑1是百搭的情况,会导致排列组合挺难计算的;比如计算对方至少3个3的概率的公式是:
[C(5,3)*2^3*4^2+C(5,4)*2^4*4^1+c(5,5)*2^5 ] / 6^5
对不对也懒得验证了,挺麻烦;纯概率论的方法太麻烦;
因为5个散子的所有组合的样本空间比较小:就是6^5=7776 ,都不到1万;
所以用最傻瓜的穷举法,
WITH A AS
(SELECT LEVEL AS X FROM DUAL CONNECT BY LEVEL <= 6),
B AS
(SELECT my_all
FROM (SELECT A1.X || A2.X || A3.X || A4.X || A5.X AS my_all
FROM A A1, A A2, A A3, A A4, A A5)),
D AS
(SELECT COUNT(1) AS ALL_CNT FROM B),
C AS
(SELECT MY_ALL,
INSTR(REPLACE(MY_ALL, '1', '3'), '3', 1, 1) AS more_then_13,
INSTR(REPLACE(MY_ALL, '1', '3'), '3', 1, 2) AS more_then_23,
INSTR(REPLACE(MY_ALL, '1', '3'), '3', 1, 3) AS more_then_33,
INSTR(REPLACE(MY_ALL, '1', '3'), '3', 1, 4) AS more_then_43,
INSTR(REPLACE(MY_ALL, '1', '3'), '3', 1, 5) AS more_then_53
FROM B),
E AS
(SELECT COUNT(CASE
WHEN more_then_13 > 0 THEN
1
END) AS more_then_13,
COUNT(CASE
WHEN more_then_23 > 0 THEN
1
END) AS more_then_23,
COUNT(CASE
WHEN more_then_33 > 0 THEN
1
END) AS more_then_33,
COUNT(CASE
WHEN more_then_43 > 0 THEN
1
END) AS more_then_43,
COUNT(CASE
WHEN more_then_53 > 0 THEN
1
END) AS more_then_53
FROM C)
SELECT ROUND(E.MORE_THEN_13 * 100 / D.ALL_CNT, 2) AS MORE_THEN_13,
ROUND(E.MORE_THEN_23 * 100 / D.ALL_CNT, 2) AS MORE_THEN_23,
ROUND(E.MORE_THEN_33 * 100 / D.ALL_CNT, 2) AS MORE_THEN_33,
ROUND(E.MORE_THEN_43 * 100 / D.ALL_CNT, 2) AS MORE_THEN_43,
ROUND(E.MORE_THEN_53 * 100 / D.ALL_CNT, 2) AS MORE_THEN_53
FROM E, D
MORE_THEN_13 MORE_THEN_23 MORE_THEN_33 MORE_THEN_43 MORE_THEN_53
86.83 53.91 20.99 4.53 0.41
也就是对方至少1个3的概率,大概87%;
对方至少2个3的概率,大概54%;
对方至少3个3的概率,大概21%;
对方至少4个3的概率,大概5%;
对方全是3的概率, 大概0.4%;
|
|