You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

抛硬币无连续正面的概率通用解法咨询(含5次实例)

哈哈,你这个问题我太熟了!枚举小次数没问题,但次数多了肯定得用递推法,完全不用死磕所有情况。我给你一步步拆解清楚:

通用解法:基于递推的斐波那契数列思路

我们先不用直接算概率,先算抛n次硬币从未出现连续正面的合法情况总数,再除以总情况数2ⁿ就是概率。

f(n)表示抛n次硬币、无连续正面的合法情况数,我们可以通过两种结尾场景推导递推关系:

  • 如果第n次抛的是反面(T):那前n-1次只要满足“无连续正面”就行,这种情况的数量就是f(n-1)
  • 如果第n次抛的是正面(H):那第n-1次必须是反面(否则就出现连续正面了),所以前n-2次只要满足“无连续正面”,这种情况的数量就是f(n-2)

由此得到核心递推公式:

f(n) = f(n-1) + f(n-2)

用你的例子验证公式

我们用你给出的n=5的情况验证一下,确保公式靠谱:

  • n=1时,所有情况(H、T)都合法,所以f(1)=2
  • n=2时,合法情况是HT、TH、TT,共3种,所以f(2)=3
  • n=3时,f(3)=f(2)+f(1)=3+2=5,实际枚举的合法情况是TTT、TTH、THT、HTT、HTH,确实5种;
  • n=4时,f(4)=f(3)+f(2)=5+3=8
  • n=5时,f(5)=f(4)+f(3)=8+5=13,正好和你枚举的13/32一致,完全正确!

计算n=20的情况

用递推公式一步步算到n=20:

  • f(1)=2
  • f(2)=3
  • f(3)=5
  • f(4)=8
  • f(5)=13
  • f(6)=21
  • f(7)=34
  • f(8)=55
  • f(9)=89
  • f(10)=144
  • f(11)=233
  • f(12)=377
  • f(13)=610
  • f(14)=987
  • f(15)=1597
  • f(16)=2584
  • f(17)=4181
  • f(18)=6765
  • f(19)=10946
  • f(20)=17711

总情况数是2^20=1048576,所以概率就是17711/1048576≈0.0169(约1.69%)。

额外补充:递推的本质

其实这个f(n)就是变形的斐波那契数列,常规斐波那契数列定义为F(1)=1, F(2)=1, F(3)=2... 这里的f(n)=F(n+2),比如f(1)=2=F(3),f(2)=3=F(4),对应关系完全吻合。如果n特别大(比如几百次),也可以用斐波那契数列的通项公式直接计算,不过对于n≤100的情况,递推计算更简单直观。

内容的提问来源于stack exchange,提问作者Stuy

火山引擎 最新活动