画鬼脚真的公平吗?起点位置 × 终点选项矩阵分析

是时候回收上一篇埋下的悬念了 —— "画鬼脚其实并不公平"。第一版文章发出去后,评论里收到了很好的提醒:"这要看情况吧,一中奖四空的时候,和五个菜各不相同的时候,结果会一样吗?" 没错。所以这次我用 起点位置 × 终点选项 5×5 矩阵做了精准分析。在 5 种实战场景下,连 "谁该从哪里出发更有利" 都给你一一拆解清楚 🪜。

1先用一句话总结画鬼脚算法

画鬼脚的结果是怎么定下来的,其实特别简单。在 N 条竖线上随机画 K 条横线,从顶端出发的人每碰到一条横线,就和相邻的旁边那条线交换(swap)。就这样。

所以画鬼脚本质上就是"一连串的 swap",结果 100% 由横线的数量和位置决定。横线越多,位置就被打乱得越厉害;横线越少,就越容易到达离起点近的地方。

📌 核心:画鬼脚要有无限多条横线才会收敛到均匀分布。而我们实际画的 5~10 条横线,是会残留偏差的,这就是今天的结论。

210 万次模拟 —— 令人震惊的结果

实验设置:

理论上每个终点位置都应该正好是 20.0%。可实际结果呢?

📊 5 人画鬼脚 + 5 条横线 · 终点位置分布(10 万次模拟)
第1号
17.2%
第2号
21.8%
第3号
23.7% 🏆
第4号
21.0%
第5号
16.3%
理论上若均匀应都是 20.0% · 中间第 3 号格子比两端第 1·5 号约高 45% 被抽中

第 3 号格子是 23.7%,第 5 号格子是 16.3%。(23.7 - 16.3) / 16.3 = 约 45%。也就是说,中间格子被抽中的频率约为两端的 1.45 倍。"画鬼脚很公平"这个信念上,被戳出了一个大洞。

3为什么中间更容易被抽中 —— 数学原因

这可不是单纯的偶然。用直觉拆解一下是这样的:

原因 1:中间格子"两边都能接收 swap"

第 1 号格子即使发生 swap,也只能从第 2 号过来。第 5 号格子也只能从第 4 号过来。可第 3 号格子从第 2 号或第 4 号哪边都能到达。意思就是入口多了一倍。

原因 2:两端"只能接收一侧的 swap"

横线少的时候,从两端格子出发的人经历的 swap 少,很可能原样到达。所以出发位置在两端,结果也容易落在两端。而中间出发的人会被东拉西扯一通,最后还是倾向于被重新拽回中央

原因 3:横线越少,偏差越大

横线 K 无限增多时,所有位置都被均匀地 swap,最终收敛到均匀分布。可我们实际画的 K = 5~10 这种水平,处于"部分随机"状态,所以偏差就原封不动地留下来了。

4横线数量带来的偏差变化

我把横线从 5 条 → 50 条逐步增加,测量了分布是怎么变化的:

横线 K第1号第2号第3号第4号第5号偏差程度
5 条17.2%21.8%23.7%21.0%16.3%⚠️ 大
10 条18.4%20.6%21.9%20.5%18.6%中等
15 条19.3%20.2%20.9%20.3%19.3%
30 条19.8%20.1%20.2%20.1%19.8%几乎没有
50 条19.95%20.02%20.06%20.01%19.96%✅ 均匀

看出规律了吧?横线一旦超过人数的 3 倍(15 条),偏差几乎就消失了;达到 10 倍(50 条)时,几乎收敛为完美的均匀分布。也就是:

🎯 画鬼脚公平性法则:横线数量 ≥ 人数 × 3
5 人画鬼脚的话,至少要画 15 条以上才能保证公平性。

5真正的核心 —— 按起点位置看终点分布(Transition Matrix)

到这里为止都是综合统计。可画鬼脚真正的公平性,得看"我从第 1 号位置出发时会到达哪里"才能弄清楚。我把同样的 10 万次模拟按起点位置分开整理了一下:

起点 ↓ / 终点 →到第1号到第2号到第3号到第4号到第5号
从第 1 号出发36%30%18%11%5%
从第 2 号出发25%26%26%16%7%
从第 3 号出发14%22%28%23%13%
从第 4 号出发7%16%26%26%25%
从第 5 号出发5%11%18%30%36%

这个矩阵才是画鬼脚真正的本质。4 个核心发现:

🎯 真正的结论:画鬼脚并不是"整体上中间到达更频繁"这种简单的偏差。每个起点位置的终点分布都完全不同,还要乘上中奖/空奖是怎么摆放的,才能算出真正的利弊。下面我就用 5 种实战场景给你拆解。

65 种实战场景 —— 谁从哪里更有利?

读者评论里有个很好的提醒 —— "一中奖四空时,和五个菜各不相同时,结果不可能一样啊。" 没错。下面把上面的矩阵套用到 5 种实战情境里分析:

📍 场景 1 · 聚餐选菜 5 个(全部不同选项)

例:第 1 号=韩餐、第 2 号=中餐、第 3 号=日料、第 4 号=西餐、第 5 号=小吃。5 人随机分到起点位置 1~5。

📍 场景 2 · 一中奖四空(决定谁请客,中奖在中间)

例:第 3 号位置放一个"中奖(=请客的人)",其余全部是"空(=不请客的人)"。

起点位置到达中奖的概率解读
从第 1 号出发18%有利(被抽中概率低)
从第 2 号出发26%中等
从第 3 号出发28%⚠️ 最容易被抽中
从第 4 号出发26%中等
从第 5 号出发18%有利

小技巧:如果能选起点位置,就抢占第 1 号或第 5 号。不被抽中的概率 82%(比理论上的 80% 略有利)。

📍 场景 3 · 一中奖四空(中奖在端点时)

例:第 1 号位置放"中奖",其余为空。

起点位置到达中奖的概率解读
从第 1 号出发36%⚠️ 压倒性不利
从第 2 号出发25%不利
从第 3 号出发14%中等
从第 4 号出发7%有利
从第 5 号出发5%压倒性有利

从中奖位置对面的那一端出发,不被抽中的概率 95%。也就是说"中奖在哪里 + 我从哪里出发"都会左右结果。把模拟可视化来看,两端最不对称。

📍 场景 4 · 四空一豁免(值日/惩罚豁免)

例:5 名打扫值日的人中只有 1 人豁免。假设"豁免"位置在中间(第 3 号)。

📍 场景 5 · 分两队(2 人 vs 3 人)

有两种摆放方式。结果差异极其鲜明:

方式 A —— 相邻摆放:[A, A, B, B, B]

方式 B —— 交叉摆放:[A, B, A, B, B]

🏆 综合结论 —— 真正公平的画鬼脚 = 三重洗牌
① 横线数量:人数 × 3 以上
② 起点位置:随机洗牌
③ 终点选项:随机摆放(尤其是中奖/豁免位置)
只要这 3 项没有全部做到,画鬼脚就只是"表面随机"而已。

7用实际游戏画面看两个场景

把上面的矩阵分析原样搬到 LuckyPlz 画鬼脚画面里,用两个场景来拆解。看看仅仅是人和终点选项的摆放变了,非对称的强度会发生怎样的变化。

📍 Case A · 5 位朋友乔迁聚会 —— 两个活、三个豁免

终点选项:豁免 / 洗碗 / 豁免 / 打扫 / 豁免。5 人中有 2 人会被分到活的情况。

政国 兴民 菲利克斯 善太 相国 豁免 洗碗 豁免 打扫 豁免 中活 41% 中活 42% 中活 45% ⚠️ 中活 42% 中活 41%

▲ Case A · 豁免 3 + 洗碗 + 打扫 / 中活两端 41%,中间 45%

参与者被分到活的概率特征
🟠 政国 第1号41%安全 · 被分到大多是洗碗
🔵 兴民 第2号42%中等
🟡 菲利克斯 第3号45% ⚠️最危险(中间)
🩷 善太 第4号42%中等
🟢 相国 第5号41%安全 · 被分到大多是打扫
小结:活分散在两个地方时,大家都在 41~45% 之间,差距仅 4 个百分点。几乎公平。只是"被分到时干什么活"由自己旁边的格子决定(政国 → 洗碗 / 相国 → 打扫)。

📍 Case B · 朋友们去 KTV —— 第一首一人唱(一中奖四豁免)

终点选项:豁免 / 第一首 / 豁免 / 豁免 / 豁免。5 个人聚在 KTV,要定谁来唱第一首的情况。看看结果集中在一个位置时,非对称会变得多么鲜明。

卡丽娜 温特 张元英 哈妮 彩源 豁免 第一首 🎤 豁免 豁免 豁免 30% ⚠️ 26% 22% 16% 11% ✅

▲ Case B · 第一首一个位置 + 豁免四个位置 / 两端差距约 2.7 倍

参与者唱第一首的概率特征
🟠 卡丽娜 第1号30% ⚠️最危险(紧挨第一首)
🔵 温特 第2号26%危险(第一首位置原地)
🟡 张元英 第3号22%中等
🩷 哈妮 第4号16%安全
🟢 彩源 第5号11% ✅最安全(89% 豁免)
小结:结果集中在一个位置时,两端差距暴增到 2.7 倍。抢占起点位置就决定了结果的 70%。想要真正随机,终点选项的位置也必须洗牌,或者干脆用轮盘。

🆚 两个 Case 一眼对比

对比Case A(2 个活)Case B(1 个第一首)
最大差距4 个百分点19 个百分点
最危险的位置中间第一首旁边(第 1 号)
最安全的位置两端对面那一端(第 5 号)
起点位置的影响力约 10%约 70%

同样的画鬼脚、同样的 5 个人,终点选项怎么摆放,结果的公平性就会从几乎均匀一路拉开到 2.7 倍非对称。豁免、中奖这种单一结果越是集中在一个位置,起点位置就越压倒性地左右结果 —— 这才是画鬼脚真正的本质。

8那么画鬼脚到底该怎么用

3 条结论:

方法 1:铺足够多的横线(人数 × 3 以上)

最正统。5 人就 15 条以上,8 人就 24 条以上。只是会把画面塞得密密麻麻,视觉上可能有点憋。

方法 2:起点位置也随机打乱

如果横线要画得少,就用把起点位置本身再洗一次牌的方式来弥补。在画鬼脚上写 1~5 之前,先把 1~5 的卡片随机打乱再开始。

方法 3:直接用轮盘(最推荐)

轮盘只要扇区面积相同,就在数学上 100% 均匀。不用像画鬼脚那样操心"横线铺够了没"。又快又公平,搞定。

🎯 打开轮盘 →

不过画鬼脚也确实有自己的魅力。"下落过程中的紧张感"是轮盘没有的。朋友之间想活跃气氛的话,画鬼脚也是个相当不错的选择。只是,横线一定要铺足。

🪜 打开画鬼脚 →

9实战指南 —— 按人数推荐横线数

人数最少横线推荐横线还是推荐轮盘吗?
3 人9 条15 条否(画鬼脚 OK)
4 人12 条20 条
5 人15 条25 条视情况而定
6~8 人人数×3人数×5是(轮盘更方便)
9 人+人数×3人数×5是(画鬼脚可读性 ↓)

顺便说一句,LuckyPlz 画鬼脚可以直接调节横线数量。默认值会按人数 × 2~3 左右自动计算,但可以用滑块往上加。在意公平性的场合,就把滑块一口气推到底再开始吧。

10常见问题

Q. 那到目前为止用画鬼脚做的决定全都不公平?

严格来说是的,但偏差也就"中间格子多被抽中 50%"这种程度,日常用并没什么大问题。聚餐选菜这种就 OK。不过,涉及大钱/大负担的决定就建议用轮盘。

Q. 一中奖四空时,如果能自己定起点位置,哪里好?

如果事先知道中奖位置,就从中奖位置对面的那一端出发。正如上面场景 3 看到的,第 1 号位置有中奖时,从第 5 号出发到达概率仅 5%,实际上很安全。但如果不知道"中奖位置"、只能定起点位置,那中间(第 3 号)最安全 —— 无论中奖在哪个位置,到达概率都在 13~28% 之间,比较平均。

Q. 定 5 个菜时,喜欢的菜该放中间还是放两端?

中间是答案。正如场景 1 所见,中间到达概率 23.7% vs 两端 16~17%。把"非吃不可的菜"放在第 3 号位置,起点位置也选中间(第 3 号),去那道菜的概率能升到 28%。在其他 4 人散落在第 1/2/4/5 号的状态下,只有你从第 3 号出发会更有利。

Q. 分两队时结果标签该怎么摆放?

一定要交叉(alternating)摆放。[A, A, B, B, B] 这种相邻摆放会让起点位置左右结果达 70%,画鬼脚实际上就没意义了。用 [A, B, A, B, B] 这样的交叉摆放,所有起点位置去 A/B 的概率就几乎均匀了。参考场景 5 的表格。

Q. 那 LuckyPlz 画鬼脚这些校正都加进去了吗?

当前版本(1) 横线自动充分摆放 +(2) 起点位置洗牌选项是有的。(3) 终点选项洗牌则是按用户自己输入的顺序摆放的结构,所以得自己随机输入。下次更新会加入"终点洗牌"开关。

Q. 自己定起点位置不是更有利吗?

没错。抢占中间位置(5 人就是第 3 号)统计上更容易被抽中。所以 LuckyPlz 画鬼脚加了一个起点位置自动洗牌的选项(默认 ON)。把它关掉,上面的偏差就会原样出现。

Q. 横线为 0 条会怎样?

就是按起点位置原样到达。也就是不洗牌,出发顺序原封不动成为结果。100% 偏差(= 其实根本没发生洗牌)。

Q. 别的网站的画鬼脚也有同样的偏差吗?

嗯。这是画鬼脚算法本身的特性,在哪里跑、只要横线不够,都会出现相同的偏差。这不是网站代码的问题,而是数学上的局限

Q. 模拟代码能公开吗?

是 JavaScript Mulberry32 PRNG + 简单的 swap 逻辑。整理干净后,会在下一篇文章公开 GitHub 链接。想自己跑跑看的朋友,请稍等。

🪜 公平的画鬼脚,自己来跑一跑

铺足够多横线,或者干脆用轮盘。