关于“硬币复制”抛硬币游戏是否会终止的技术问询
关于“硬币复制”抛硬币游戏是否必然终止的技术问询
嘿,咱们来拆解这个看似简单的抛硬币游戏,先把规则和细节说清楚:
这是个基于公平硬币的小游戏:我们反复抛掷硬币,直到出现「复制序列」才停止。这里的「复制序列」定义很明确——你能把截至当前的所有抛掷结果,拆分成两个完全相同的字符串。
给几个直观的例子帮你理解:
- 如果抛掷结果是
TT,那第2步就满足终止条件了——直接拆成两个单独的T,完全一致; - 再看个稍复杂的:如果序列是
HTTHTT,第6步会触发终止,因为能拆成HTT和HTT这两个一模一样的子串; - 敲黑板划重点:像第4步的
HTTH是不算的!因为如果拆成前两位HT和后两位TH,这俩只是镜像反转,并不是完全相同的复制,不符合规则。
那核心问题来了:这个游戏必然会终止吗?答案是肯定的!我们可以用鸽巢原理来推导:
假设我们考虑长度为$2^n + 1$的序列,根据鸽巢原理,在所有可能的长度为$n$的子串中,必然会出现重复的情况。当出现重复的长度为$n$的子串时,我们就能找到合适的分割点,把整个序列拆成两个相同的部分。换句话说,不管你运气多“背”,迟早会抛出满足条件的复制序列,游戏一定会结束。
备注:内容来源于stack exchange,提问作者user1441515
相关产品推荐
相关产品推荐

