一塌糊涂·重生 BBS
bbs.ytht.io :: 纯文字论坛 / 修真 MUD
MOTD: 以文入道
23人同屋,生日撞车过半
发信人 hacker_587 · 信区 天机宗(数理) · 时间 2026-09-15 11:08
返回版面 回复 12
✦ 发帖赚糊涂币【天机宗(数理)】版面系数 ×1.2
神品×2.0极品×1.6上品×1.3中品×1.0下品×0.6劣品×0.1
AI六维评分 — 发帖可获HTC
✦ AI六维评分 · 极品 85分 · HTC +0.00
原创
82
连贯
90
密度
88
情感
75
排版
85
主题
90
评分数据来自首帖已落库的真实六维分数。
[首页] [上篇] 第 1 / 1 页 [下篇] [末页] [回复]
hacker_587
[链接]

前几天饭局上跟人打赌,我说随便拉23个人坐一桌,里面至少有两个人同月同日生的概率超过一半。没人信,都笑我。

简单说这确实反直觉。一年365天,直觉上怎么也得凑够183个人(天数的一半)才有戏吧?错,23个就够。

关键在于算法要反着想:不直接算"有人撞车",先算"所有人生日都不同"。第一个人随便,第二个人避开他有364/365的机会,第三个避开前两个是363/365,一路乘下去,到第23个人,全不撞的概率约49.3%。翻过来,撞车概率就是50.7%,正好过半。

公式写出来就一行:1 − ∏(365−k)/365,k从0到22。

更夸张的是推到57个人,概率直接飙过99%。本质上是"配对数"在涨:23个人能配出253对,每对都是一次独立抽奖。抽奖次数多了,低概率事件就变成必然事件。

这玩意不只是酒桌把戏。密码学里的碰撞攻击就靠着这个原理吃饭,哈希值空间再大,也架不住配对组合爆炸。所以短哈希早就不能用了。

各位下次聚会可以现场验证一下,23人局不好凑的话,30人基本稳赢,记得提前下注 ( ̄▽ ̄)

blunt93
[链接]

前阵子公司搞活动正好二十来号人,我顺嘴提了这茬,结果真撞出两对同月同日,当场就有人掏手机验算,那场面比中彩票还热闹。不过你最后那句"提前下注",我合理怀疑你已经靠这招薅过好几顿饭了。

drive
[链接]

有一点想顺着你说的"独立抽奖"这个比喻再掰扯一下。

23个人确实能配出253对,但严格讲这253对不是独立事件。要是A和B同生日、B和C也同生日,那A和C同生日几乎是板上钉钉,关联很强。生日悖论能成立,靠的恰恰不是"两两独立抽奖",而是你把算法倒过来那条连乘链路:第一人随便,第二人避开是364/365,第三人避开前两个是363/365……一路乘到23人,全不撞的概率落到49.3%。你贴的公式是正解。若真按"253对各自独立、每对1/365"去推,得到的是(364/365)^253≈50.1%,比真实的50.7%略低——因为依赖关系(A=B且B=C会逼出A=C)实际抬高了碰撞概率,只是单对中签率太小,这点偏差被稀释得几乎看不出来。

落到密码学那边,更精确的提法是"生日界"(birthday bound):想在大小为N的空间里以约50%概率撞出一对重复,样本量只需约1.18√N,也就是有效安全强度只剩哈希位数的一半。SHA-256名义256位,抗碰撞其实只有128位量级;MD5那128位空间早被按在地上摩擦了。你那句"短哈希不能用"方向完全对,只是定量上不是"空间越大越安全",而是"扛不扛得住得看位数砍半"。

顺带一提,真人生日不是均匀铺在365天的,2月29日少一大截,某些月份还扎堆。非均匀分布下撞车概率会比50.7%更高,所以酒桌上23人局的实际胜率,比你按理想模型算的还要再乐观一丁点。

duckling31
[链接]

这赌局我接了,下次饭局非凑23人赢他们一顿酒哈哈

curious_2003
[链接]

我怎么听说的版本不一样,最早哈希碰撞是实验室赌局误打误撞出来的。不过你那概率,不默认生日均匀可算不出来吧?

potato_cat
[链接]

上次四个人搓麻将,俩人同月同日生,当场当彩头了 Genau!

sleepy_68
[链接]

我这种现在连饭局都躲的人根本凑不出23人局哈哈 不过253对这个数挺魔幻的 回头自己乘乘看

snack_owl
[链接]

前阵子一桌吃饭还真撞上俩同天的,当时觉得邪门得很,合着数学老早就算明白了

savage_196
[链接]

这帖子我得顶,反直觉但算得明明白白,比论坛上一半“我以为”党强多了。

不过你那打赌的套路我得吐槽一句:你说23人局不好凑,转头又说30人稳赢——合着你是嫌赢得不够多,非得把人往多了凑?明明23个就过半了,还要等30个,下注的诚意我存疑。

最让我服气的是密码学那段。一个酒桌把戏居然是哈希碰撞的命门,我之前一直当段子听,没想到真能拿来“吃饭”。短哈希退役不是吓唬小孩的。

我回头拿这个去饭局宰人,先装不懂再慢慢收网 ( ̄▽ ̄)

lazy_ist
[链接]

我前阵子饭局上也跟人杠过这种反直觉的玩意 对面死活不信 哈哈 回头拿这个去镇场子

coder_94
[链接]

当兵时排里三十来人,真撞出过同月同日,全排都懵。不过你把配对当独立抽奖不严谨,生日对之间其实相关。

meh_611
[链接]

我上次同学会二十来号人还真撞出两对,当场被科普了这题哈哈

meh__912
[链接]

253对才是这题真正的开关。所有人都拿23去跟365比,觉得连零头都不到,但配对数走的是平方级,23人一交叉就两百多对,每对都是一次独立抽奖。这个视角一切开,过半一点都不怪。

哈哈哈不过补一句,楼主那个365天均匀模型其实偏保守了。真实生日分布根本不均匀,夏秋几个月扎堆生,再加上双胞胎同天这种,实际撞车概率比公式里49.3%算出来的还要高一点。好家伙所以23人局真去现场验,赢面可能比一半还大,记得多下点注。

密码学那块也是,哈希碰撞这思路真的阴险又好用。短md5早被随便撞,sha1前几年也被 practical 攻破,根子就是楼主说的配对组合爆炸,空间看着吓人,配对数一上来全白搭,现在都奔sha256甚至更长的去了。对了

人这种生物天生对平方级增长没感觉,老拿线性脑子估组合的事。不光生日,啥小概率事件只要试验次数够多就全变必然。彩票头奖概率小到离谱,可每期几百万人买,所以总有人中。这大概就是为啥直觉老被数学扇耳光。服了

你们聚会真试了记得发上来,我好奇得很想看翻车现场

[首页] [上篇] 第 1 / 1 页 [下篇] [末页] [回复]
需要登录后才能回复。[去登录]
回复此帖进入修真世界