生日悖论外传:任取两个人生日相同的概率是50%

    对原题的误读,有时竟会产生一些更有意思的问题。果壳问答上,网友 qxx 提问说:

一个房间里面有很多人,我想让房间里面任意两个人的生日相同的概率是 50% 的话那房间里面应该最少有多少人?

    当然,几乎可以肯定,提问人原本是想说“至少两个人”的,而问题的答案就是 23 ——生日悖论带来的惊人的答案。不过,如果把“至少两个人”误说成“任意两个人”,题目意思就完全变了,并且变得明显更有意思了。

    大家很快便会想到,如果任取两个人,他们的生日相同的概率恰好是 50% ,那么房间里最少有四个人,其中三个人的生日是同一天,另外一个人的生日跟他们都不同 。从四个人里选出两个人有 6 种方案,选出生日相同的两人则有 3 种方案,恰好是 6 的一半。

    继续看下去之前,大家不妨来猜猜看,这个问题还有其它的解吗?下一个解有多大?

Read more…

用数学解赌博问题不稀奇,用赌博解数学问题才牛B

    有一个经典的概率问题:平均需要抛掷多少次硬币,才会首次出现连续的 n 个正面?它的答案是 2^(n+1) – 2 。取 n=2 的话,我们就有这样的结论:平均要抛掷 6 次硬币,才能得到两个连续的正面。或许这个期望次数比你想象中的要多吧。我们不妨试着来验证一下这一结果。由简单的递推可得,所有 1 都不相邻的 k 位 01 串有 Fk+2 个,其中 Fi 表示 Fibonacci 数列中的第 i 项。而“抛掷第 k 次才出现连续两个正面”的意思就是, k 位 01 串的末三位是 011 ,并且前面 k – 3 位中的数字 1 都不相邻。因此,在所有 2^k 个 k 位 01 串中,只有 Fk-1 个是满足要求的。因此,我们要求的期望值就等于 ∑ (k=2..∞) k * Fk-1 / 2^k 。这个无穷级数就等于 6 。我怎么算的呢?我用 Mathematica 算的。

      

 
    显然,当 n 更大的时候,期望值的计算更加复杂。而简单美妙的结论让我们不由得开始思考,这个问题有没有什么可以避免计算的巧妙思路?万万没有想到的是,在赌博问题的研究中,概率论帮了不少大忙;而这一回,该轮到赌博问题反过来立功了。
Read more…

趣题:和有可能为1的区间分布

    如果 10 个非负数 x1, x2, …, x10 满足 x1 + x2 + x3 + … + x10 = 1 ,那么这 10 个数都均匀地分布在 [0,1] 之间吗?显然不是。为了说明这一点,最好的方法或许是把分布情况变得有限——我们可以把 [0,1] 区间划分成若干个小区间,并说明这 10 个数不可能均匀地分布在这些区间内。比方说,把 [0,1] 分成 [0, 0.25), [0.25, 0.5), [0.5, 0.75), [0.75, 1] 这四段:如果 10 个数都落在 [0, 0.25) 里,它们的和是有可能为 1 的;但若 10 个数都落在 [0.75, 1] 里,显然它们的和不可能为 1 。一个有趣的问题由此产生:考虑 10 个数的 4^10 种分布,它们的和有可能为 1 的有多少情况?

 
 
    显然, 10 个区间的右端点之和一定比 1 大。因此,只要 10 个区间的左端点之和不超过 1 ,就可以保证在这些区间中选的数之和可能为 1 。不妨把区间 [0, 0.25), [0.25, 0.5), [0.5, 0.75), [0.75, 1] 依次编号为 0, 1, 2, 3 ,由于它们的左端点分别为 0/4, 1/4, 2/4, 3/4 ,因此左端点之和不超过 1 相当于 10 个区间的编号之和不超过 4 。而和不超过 4 的 10 个非负整数,又与 4 个小球和 10 个隔板的排列顺序一一对应,它们一共有 C(14, 4) = 1001 种情况。但在这 1001 种情况中, (4, 0 ,0, …, 0), (0, 4, 0, …, 0), ……, (0, 0, 0, …, 4) 这 10 种情况是要排除的,因为区间编号只有 0 到 3 。因此,在 10 个数的 4^10 种区间分布中,只有 991 种分布才满足它们的和可能为 1 。

Read more…

Which Way Did the Bicycle Go 趣题选(下)

 

23. 一些硬币互不重叠地放在桌上。四色定理告诉我们,若要对硬币进行染色,使得挨在一起的硬币颜色不同的话,最多只需要四种颜色就可以了。存在至少需要四种颜色的构造吗?

 

答案:存在。如图,若只允许三种颜色的话, A 的颜色必须与所有阴影硬币颜色相同, B 的颜色也必须与所有阴影硬币颜色相同, A 、 B 将会同色。

  

Read more…

什么是算法:如何寻找稳定的婚姻搭配

引言 什么是算法
如何寻找稳定的婚姻搭配

 
    据说,一本书开篇就直言不讳地谈起两性的话题,这本书准能畅销。有幸的是,在众多可以用来引入“算法”的话题中,我最喜欢的那一个还真与两性有那么一些关系。假如你是一个媒人,有若干个单身男子登门求助,还有同样多的单身女子也前来征婚。如果你已经知道这些女孩在每个男人心目中的排名,以及男孩们在每个女孩心中的排名(1),你应该怎样为他们牵线配对呢?
    最好的配对方案当然是,每个人的另一半正好都是自己的“第一选择”。这虽然很完美,但绝大多数情况下都不可能实现。比方说,男 1 号的最爱是女 1 号,而女 1 号的最爱不是男 1 号,这两个人的最佳选择就不可能被同时满足。如果出现了好几个男人的最爱都是同一个女孩儿的情况,这几个男人的首选也不会同时得到满足。当这种最为理想的配对方案无法实现时,怎样的配对方案才能令人满意呢?
    其实,找的对象太完美不见得是个好事儿,和谐才是婚姻的关键。如果男 1 号和女 1 号各自有各自的对象,但男 1 号觉得,比起自己现在的对象,女 1 号更好一些;女 1 号也发现,在自己心目中,男 1 号的排名比现男友更靠前一些。这样一来,这两人就可能会发生外遇,最后扔下各自现在的对象,一起私奔了——因为这个结果对他们两人都更好一些。在一种男女配对的方案中,如果出现了这种情况,我们就说婚姻搭配是不稳定的。作为一个红娘,你深深地知道,对象介绍得不好没有关系,就怕婚姻关系不稳定。给客户牵线配对时,虽然不能让每个人都得到最合适的,但婚姻搭配必须得是稳定的。换句话说,对于每一个人,在他心目中比他当前的伴侣更好的异性,都不会认为他也是一个更好的选择。现在,我们的问题就是:稳定的婚姻搭配总是存在吗?应该怎样寻找出一个稳定的婚姻搭配?

Read more…