武辰作品索引

知乎作品库

回答 · 8

知乎原文

有哪些美丽或神奇的理科公式?

Cn0+Cn1+Cn2+……+Cnn=2nC_{n}^{0}+C_{n}^{1}+C_{n}^{2}+……+C_{n}^{n}=2^n

这个简单的公式蕴含着“两次算”的思想,体现了“殊途同归”的思想。
通俗地解释这个公式:假如我是班主任,我要从n个学生中选任意个学生去帮忙打扫卫生,有多少种选法?


在每个学生(微观)的视角中:

学生1是否被取到,有两种可能;

学生2是否被取到,有两种可能;

……;

学生n是否被取到,有两种可能。

一共有 2n2^n 种可能。


另一个视角是班主任(宏观)视角:

如果我不打算找学生帮忙打扫卫生,则有 Cn0C_{n}^{0} 种可能;

如果我只打算找一个学生,则有 Cn1C_{n}^{1} 种可能;

如果我打算两个学生,则有 Cn2C_{n}^{2} 种可能;

……;

如果我打算叫上所有学生,则有 CnnC_{n}^{n} 种可能。

以上所有互斥而完备的可能性相加,则得等式左边。

知乎原文

有哪些违背直觉的数学问题?

文长约一万字。主要讲述了如下问题:“星期二男孩问题”、“三门问题”、“红眼岛自杀问题”、“教授的两个数字问题”、“猜疑链问题”、“信息收到请回复问题”。

我的新书《大白话概率论:从数学直觉到AI视野》已经出版了,延续了这里用大白话和具体例子讲数学的方式。书的详细介绍和购买链接放在文末,有兴趣可以看看。

首先看“星期二男孩问题”和“二孩问题”:

1.邻居有两个孩子,已知年纪更大的是男孩,求另一个是男孩的概率。

2.邻居有两个孩子,已知至少有一个是男孩,求两个都是男孩的概率。

3.邻居有两个孩子,已知年纪更大的是男孩且出生于星期二,求另一个是男孩的概率。

4.邻居有两个孩子,已知至少有一个是男孩且出生于星期二,求两个都是男孩的概率。

假定:

婴儿是男性或女性的概率都是二分之一;

生于星期几是等可能事件;

世界上只有两种性别,没有变性手术;

不存在双胞胎或者多胞胎的可能。

总而言之,在理想情况讨论这个问题(两个孩子的性别、出生星期相互独立,每个孩子的性别与出生星期也独立。)。

首先来看第一题:这个问题等价于“已知生下的第一胎是男孩,那么再生一胎还是男孩的概率是二分之一”,或者也等价于“已知第一次抛硬币硬币是正面,那么第二次抛硬币也是正面的概率是二分之一”。第一胎的性别与第二胎的性别是独立事件。答案是二分之一。

但第二题的答案是三分之一。考虑两个孩子的四种组合,每个组合的概率都是相等的,即(男男、男女、女男、女女)。已知其中有一个男孩的情况下,我们需要排除掉(女女)的情况。那么现在的样本空间只有三种情况:(男男、男女、女男),且三种情况概率相等。于是两个都是男孩的概率只有三分之一。

再来看后两题:

3.邻居有两个孩子,已知年纪更大的是男孩且出生于星期二,求另一个是男孩的概率。

4.邻居有两个孩子,已知至少有一个是男孩且出生于星期二,求两个都是男孩的概率。

第三题等价于“已知在星期二生了一个男孩,求再生一个孩子仍然是男孩的概率”。这道题的答案显然是二分之一。

第四题的解答:

为了方便描述,用 “1”, “2”, “3”, “4”, “5”, “6”, “7” 表示周一至周日出生,”b”, “g” 表示那个孩子是男孩还是女孩,比如 “2b” 就表示某个孩子是周二出生并且是男孩,”3g” 则表示某个孩子是周三出生并且是女孩。然后我们穷举一下周一至周日7天出生的两个孩子的所有可能性,一共有 14 ×14 = 196 种可能。

我们再找出其中包含星期二出生的男孩的项,即包含 “2b” 的项,一共有 27 种,如下:

( 1b , 2b ), ( 1g , 2b ), ( 2b , 1b )

( 2b , 1g ), ( 2b , 2b ), ( 2b , 2g )

( 2b , 3b ), ( 2b , 3g ), ( 2b , 4b )

( 2b , 4g ), ( 2b , 5b ), ( 2b , 5g )

( 2b , 6b ), ( 2b , 6g ), ( 2b , 7b )

( 2b , 7g ), ( 2g , 2b ), ( 3b , 2b )

( 3g , 2b ), ( 4b , 2b ), ( 4g , 2b )

( 5b , 2b ), ( 5g , 2b ), ( 6b , 2b )

( 6g , 2b ), ( 7b , 2b ), ( 7g , 2b )

这27种可能里另一个孩子也是男孩的情况是13种。

也就是说,已知至少有一个孩子是星期二出生的男孩的情况下,两个孩子都是男孩的可能性是 13/27 ,小于二分之一(但是接近二分之一)。



三门问题:

有一个电视游戏竞猜节目,主持向竞猜者展示了三扇门。有一扇门之后是一辆小轿车,另两扇门之后是空房间。主持人事先知道门后是什么。

游戏分为三步:首先,你选择一扇门;然后,主持人将会打开剩余的两扇门中的一扇,展示一个空的房间(当然他从未打开那扇后面藏有轿车的门,一定会打开空门);最后你可以选择是仍然选择你开始选择的那扇门,还是选择去打开另一扇仍然关闭的门。 如果你选择换门,则你获得小轿车的概率是多少?

咋一看,貌似换不换门都无所谓。因为不管你选择哪扇门,主持人都会打开一扇空门,主持人打开空门这个动作看起来是多余的。

事实上,这个主持人是上帝视角。假设你一开始想打开A门,然后主持人打开了C门,展示C门是空的。你有一次机会,要不要改成B门?

这个时候你需要想想,为什么主持人偏偏不打开B这扇门呢? (主持人并不是随机打开门的,而是只打开后面没有车的门)

我举一个极端的例子。假设有100个门,只有一个有汽车,其他都是空的。不妨设你一开始想开第一扇门(或者如果你想打开第77扇门,那么我们将门重新编号,把原来的第77扇门编号成第1扇门,以此类推……这就是“不妨”的意思),那么你获得小汽车的概率只有百分之一。

这个时候,假设主持人打开了第2-36扇门和第38-100扇门,他一共打开了98扇门,且门后都是空的。这个时候问你,要不要换成打开第37扇门?

当然要换!第一扇门背后有汽车的概率只有百分之一,而第37扇门背后有车的概率是百分之99!

我们回过头想想,为什么主持人偏偏要绕过第37扇门?这背后大概率有猫腻。也就是说,37号门背后大概率有车。

我们再回到三扇门的情况。一开始ABC背后有车的概率都是三分之一,你想打开A门。在主持人打开C门之后,样本空间发生了改变,B背后有车的概率从三分之一变到三分之二。

所以问题的关键是:观察者透露出多少信息。在星期二男孩问题中,他是只知道第一个孩子的信息呢,还是已经观察了所有孩子的信息,这将决定问题的样本空间。

这个问题和“囚犯问题”是等价的。数学证明在这篇文章中:

有趣的数学——违反直觉的囚犯问题和三门问题

接下来红眼病自杀问题,其实和上面两个问题一样都是牵扯到“信息”的问题。

一个岛上有100个人,其中有5个红眼睛,95个蓝眼睛。这个岛有三个奇怪的宗教规则。

1. 他们不能照镜子、照湖面海面,不能看自己眼睛的颜色。

2. 他们不能告诉别人对方的眼睛是什么颜色。他们不能讨论所有和红眼有关的事物。

3. 一旦有人知道了自己的眼睛颜色,他就必须在当天夜里自杀。 注:虽然题设了有5个红眼睛,但岛民是不知道具体数字的。

某天,有个旅行者到了这个岛上。由于不知道这里的规矩,所以他在和全岛人一起狂欢的时候,不留神就说了一句话:你们这里有红眼睛的人。

假设这个岛上的人足够聪明,每个人都可以做出缜密的逻辑推理。请问这个岛上将会发生什么?

此问题的第一个答案是用数学归纳法得出的:如果这个岛上有N个红眼睛,那么在旅行者说这句话的第N天,他们全部都会自杀。具体到本题则是,在第5天,这个岛上的5个红眼睛会全部自杀。

证明过程如下:

如果这个岛上只有1个红眼睛,其他人都是蓝眼睛。那么,当旅行者说了这句话之后,此人立刻就会知道自己是红眼睛,他就会在当天自杀。

假设当这个岛上有N个红眼睛的时候,在旅行者说了这句话之后的第N天,这些红眼睛会全部自杀。

那么,当这个岛上有N+1个红眼睛的时候,在每个红眼睛看来,岛上都确定有N个红眼睛,并等待着他们在第N天自杀。而在第N天,大家都没有自杀。所以一到第N+1天,每个红眼睛都明白了这个岛上还有第N+1个红眼睛——他自己。于是大家都在第N+1天自杀了。

所以命题得证:如果这个岛上有N个红眼睛,那么在旅行者说这句话的第N天,他们全部都会自杀。

真是一件奇怪的事情:旅行者说了一句话“你们这里有红眼睛的人”之后,就有人自杀了。但是不对劲的事是——这句话根本不用旅行者说!事实上每个人都知道“我们这里有红眼睛”。更准确来说,每个人都知道“我们这里至少有四个红眼睛”。旅行者说了一句“废话”,怎么就有人自杀了呢?

如果你看晕了,可以看这个简化版本:

我们假设100个人中只有两个红眼睛:小郭和小敬。在小郭眼里,他看到98个蓝眼睛和一个红眼睛(即小敬),他心想:“可能小敬是唯一的红眼,也可能我和小敬是唯一的两个红眼。但是我不能确定,而且在现有的宗教规则下,我永远不能确定。”同时,在小敬的眼里,他也看到98个蓝眼睛和一个红眼(即小郭)。他的想法和小郭一样。

剩下98个人则是看到了两个红眼。同时每个人都想“可能只有小郭和小敬是红眼,也可能我和他俩一共三人是红眼,但是我永远不能确定。”

总之,每个人都知道“这岛上至少有一个红眼”。但是每个人都不能百分百确定自己是否会自杀。

好了,现在旅行者说了一句话“你们之中有红眼”。这时候,小郭会这么想:“如果小敬是唯一的红眼,那么他今晚该自杀了。愿他走好。”同时,小敬也想:“如果小郭是唯一的红眼,那么他今晚该自杀了。希望来世还能和他成为基友。”

两个人都在等对方自杀,结果就是第一天无人自杀。

小郭在内心的想法是这样的:“卧槽,原来小敬不是唯一那个红眼,那剩下98个人明确是蓝眼,剩下的那个红眼就是我了!哎,我今晚得自杀了!”

小敬的想法也是类似。

于是第二天晚上小郭和小敬自杀了。

剩下98个人于是都知道自己是蓝眼,于是在接下来一天都“你是风儿我是沙”地一起自杀了。

可是,旅行者看起来说了一句废话啊!不用等到旅行者说那句话,每个人其实都已经知道“岛上至少有个红眼”。可是旅行者说了那句话后,大家怎么就知道自己的颜色了呢?

我们再将问题提升复杂一点:我们假设100个人中有三个红眼:小郭、小敬、小明。

在小郭眼里,他看到小敬和小明是红眼。于是在他的想法里,小敬和小明应该在第二天自杀(这是我们刚刚讨论过的情况)。结果他俩并没有在第二天自杀。于是小郭痛彻心扉地理解了一个事实:“原来我也是红眼!”

小敬和小明的脑回路也是这样想的!

第三天,三人一起自杀了。

于是回到原题,四个人的情况在第四天自杀,五个人的情况在第五天自杀。

为什么会有这样的悖论?

事实上,旅行者说的那句话是有信息的!

我们注意这样一个事实:“每个人都知道这件事情”与“每个人都知道每个人都知道这件事情”是不同的!

比如公司的老板特朗普有两个秘书分别是小郭和小敬,特朗普和这两个秘书都有一腿。于是,每个人都知道“这两个秘书间至少有一个人与特朗普有一腿”。有一天,特朗普喝醉酒说出了这句话,即:你们两个秘书间至少有一个人与我特朗普有一腿。接下来的情节就有趣了。小郭想,如果小敬是清白了,那么小敬岂不是知道我和特朗普有一腿了?同样的道理,小敬也是这样想的。

每个人都知道“这两个秘书间至少有一个人与特朗普有一腿”,但是不一定每个人都知道“每个人都知道这两个秘书间至少有一个人与特朗普有一腿”。


再举第二个例子。假设郭教授叫上你和小明玩游戏。

游戏是这样的:郭教授分别在两张卡片写下两个数字,即5和7。然后随机贴在你们的额头上。你们不能看见自己的数字,但是能够看到对方的数字。郭教授告诉你们:你们的数字相差2。

假设你们不能语言交流、心灵感应等等。只能看到对方的数字。

你和小明都明白这样一个事实:“我们两个人的数字都小于10”。为什么?不妨设你的数字是5,小明的数字是7。你看到小明的数字是7,于是你猜测你的数字只能是5或者9。同样,小明看到你的数字是5,猜测他自己的数字只能是3或者7。

那么有意思的事情来了,我不能确定小明是否得出“我们俩的数字都小于10”这个结论。

就像我刚刚举的那个只有两个红眼病(小郭和小敬)的例子:

我们记事情A是:“我们其中至少有一个人是红眼”。

事情B是:“我们每个人都知道事实A了。”

作为小郭和小明,他们都知道事情A,这是能确定的。但是不能确定的是,他们是否知道事情B。我能确定我们岛上有红眼病,但是小敬能不能确定?我不知道。直到旅行者说了之后,我才能确定。

旅行者说之前,A是共有信息。旅行者说之后,A成为了公共信息。

我能确定至少有一人和特朗普有一腿,但是小敬能不能确定?我不知道。直到特朗普说了之后我才能确定。

这个问题中,事情A是“我们的数字都小于10”。

事情B是“我们都知道我们的数字小于10”。

两位同学可以确定A,但是并不能确定B。

我看到小明的数字是7,我可以猜测我的数字是9(当然有样的可能性)。在我的数字是9的情况下,我可以合理猜测:小明看到我的数字是9会觉得他自己的数字是11!这样一来,我们俩中有人的数字可能大于10。

更绕的是,在小明的眼里,他觉得自己是数字是11的情况下,他可能会认为:我看到的数字是11并且我可能认为自己的数字是13!这样一来,俩人的数字都可能大于10了!

这仍不是最绕的,更绕的是,数字可以无穷无尽下去……你认为13,我认为你认为15,你认为我认为你认为17……


看第三个例子:

古代交通不便,平时的书信可能因为路途遥远、天灾人祸、中途被劫匪劫走、中途被老鼠吃了而导致未送达对方,会造成很多不必要的担忧、麻烦、误会之类。

假设在北京的李白去成都找杜甫玩。

李白在成都和杜甫欢度了一段非常快乐的时光。最后李白要走时,杜甫说道:“李白乘舟将欲行,忽闻……不对,李白啊,现在外面这么乱,天灾人祸这么多,路上得多小心!你到达北京之后一定要写信告诉我你已经安全回到了北京,免得我日夜担心!”

李白说“我肯定会第一时间给你写信报平安的!你要知道,如果你在担心我的平安,我也会很难受的!我不能让你担心我。你本来就有抑郁症,如果你总在担心我,我会担心你的身体会因忧郁过度而垮掉!”

几个月后,李白回到了京城。李白写信“杜甫小弟,我已经安全到北京了!”,正当要投信的时候,李白转念一想,万一这信件没送到杜甫手上怎么办?那这样的话,杜甫就得继续日夜担心我了!那这样我也会很难受的!于是李白又加了一句话“收到请回复。”好了,信发出去了。

杜甫收到了信。这时杜甫留下了感动的泪水:“李白总算安全回到了北京”。于是杜甫兴高采烈地带着全家去吃肯德基。出门之前转念一想,“不够,李白现在肯定还在担心我呢!他说过,如果我在担心他的安危,他会很难受,他也会担心我这样日夜担心会导致我身体吃不消。我必须告诉李白,信我收到了”。

于是杜甫写了一封信:“亲爱的李白,我已经收到了信,很高兴你安全地回到了北京。我现在不担心你的安危了,我倒是在担心你是否知道我已经不再担心你的安危了。所以你收到这封信的时候,务必要回复我哦,否则我整天还是会担心你的。么么哒!”

这封信收到李白的手里,李白终于留下了感动的泪水:你这老头子!我终于不用担心你的身体了!哎,不过你这老头子总是忧国忧民,担心这担心那的。我这就写信告诉你,我收到了这封信。

于是李白写信:“你的信我已经收到了!杜老先生就不用担心我啦!”

正当李白想要发出去的时候,转念一想:“我必须得确定杜老头子收到了我现在这封信,否则如果他没收到我的信,他得没日没夜地担心我了,我也得没日没夜地担心他了!哎,为何这世上总是多情的人被伤?早知道伤心总是难免的,为何当初一往情深?”

于是李白在信的后面加了几个字:“收到务必回复!我的思密达!”

杜甫在几个月后收到了这封信,留下了感动的泪水。同时杜甫不能让李白这样担心他,于是杜甫对李白写信:“信我已经收到了,你不必再担心我了。但是为了确保真的不再担心我,请看到这封信后务必回复我!否则我会一直担心你下去。”

李白在几个月后收到了信,回道:“我已经收到信了。让我留下眼泪的,不止昨夜的酒;让我依依不舍的,不止你的温柔。所以请你不要再担心我。为了确保你真的不再担心我,请你在看到这封信后务必回复我。”

几个月后,杜甫收到信,然后回信道:“和我在成都的街头走一走,直到所有的灯都熄灭了也不停留……你的信我收到了。为了确保你不再担心我,请你在看到这封信后务必回复我”

这个故事将永远不会有结尾,除非第三个人跳出来说:“好了你们俩够了,你们都很安全。”或者他们能够同时通话、视频。


看最后一个例子:

(注:在实际情况中可能极少出现上述李白杜甫的例子,也极少出现下面的例子,毕竟人的敏感、认知、猜疑是有限度的。但是在纯数学、理想化的条件下看这两个例子会很有趣。)

假设你喜欢小红,小红也喜欢你。但是你们都没说出来过。是不是这等于你们俩互相喜欢?这当然是互相喜欢,只是还没有相互确认。因为你不知道小红是不是喜欢你,同样地,小红也不知道你是否喜欢他。有一天,小郭偷偷告诉你“小红喜欢你”,说完这句话就走人了。又有一天,小郭偷偷告诉小红“你喜欢小红”,当然你是不知道小郭去通风报信这件事的。现在的客观(请注意这个词,这是客观信息,但是你或者小红未必知道)情况是,你喜欢小红,且你知道小红喜欢你;同时小红喜欢你,且小红知道你喜欢小红。

这是否等于你们俩相爱了?

仍然不等于。因为你不能确定小红是否知道你已经知道了小红喜欢你。小红也不能确定你是否已经知道了小红已经知道了你喜欢小红。

事实上,这样的猜测可以无尽下去:我能不能确定小红已经知道了我已经知道小红知道我喜欢她这件事实?我能不能确定小红已经知道了我已经知道了小红知道了我已经知道了小红知道了……(知道×n)……我已经知道了我喜欢她这件事实?

记

A=你喜欢小红

B=小红喜欢你

A1=你知道B

B1=小红知道A

A2=你知道B1

B2=小红知道A1

……

An=你知道Bn-1

Bn=小红知道An-1

……

要让“你们互相喜欢”成为双方的共同知识,需要各个层次的“知道对方知道”都成立。但一开始你只知道A,小红只知道B,你不知道A1,小红不知道B1。小郭通风报信后,你只知道A和A1,而不知道A2,小红只知道B和B1,而不知道B2…

如何才能斩断这无尽的猜测?正如旅行者在所有人面前说出那句每个人都知道的话。答案是:爱要大声说出来。当着她的面说:“我喜欢你!”


2026年10月30日更新:我的第一本书终于出版了!

这些年,我在知乎写了不少概率论和数学相关的回答。现在,我的第一本书《大白话概率论:从数学直觉到AI视野》终于由清华大学出版社出版了。这半年有不少朋友一直在等,非常感谢大家的耐心和支持~

这是一本适合自学的概率论与数理统计教材,700多页,延续了我写回答时的讲法:用大白话,讲得很详细,把公式背后的道理讲清楚,也把各个知识点之间的联系串起来。

书中还结合了交叉熵、KL散度等AI相关内容,并设有“AI视野”和“Python实验室”。此外,也收录了2024—2026年考研数学一、数学三的部分概率论真题,以及大厂算法岗面试概率题的详细解答。

如果你喜欢这篇回答的讲法,也想系统地学一遍概率论,可以看看这本书。 下方放了购书卡片,感谢大家支持~