跳1格跳2格都算1步。
E(Xi)表示在格子i上时,期望再走多少步结束:在X1上,跳1格时走E(1+X2)步,跳2格时走E(1+X3)步,概率分别为0.5E(X1)=0.5E(X1|Y=1)+0.5E(X1|Y=2)=0.5E(1+X2)+0.5E(1+X3)=1+0.5E(X2)+0.5E(X3)
以下同理:E(X2)=0.5E(X2|Y=1)+0.5E(X2|Y=2)=0.5E(1+X3)+0.5E(1+X4)=1+0.5E(X3)+0.5E(X4)E(X3)=0.5E(X3|Y=1)+0.5E(X3|Y=2)=0.5E(1+X4)+0.5E(1+X1)=1+0.5E(X1)+0.5E(X4)E(X4)=0
得:E(X3)=1+0.5E(X1)E(X2)=3/2+1/4E(X1)E(X1)=18/5
由于每次移动后的位置与 4 的余数有关(因为遇到编号为 4 的倍数的格子就会停止),我们可以将位置按照模 4进行分类。这样,可能的状态就只有 4 个,即位置为 0、1、2、3,其中:
import random n=100000 step = 0 for i in range(n): sum = 1 while sum != 0: sum += random.randint(1,2) sum = sum%4 step += 1 print(step/n)