我遇到了一个脑筋急转弯的问题。我试着去模拟,但是很难得到答案。问题是这样的:有一个变形虫。每一分钟,变形虫要么死亡,要么保持原样,要么以相同的概率分裂成2或3。它的所有后代都会有相同的行为,独立于其他变形虫。变形虫种群死亡的概率是多少?你知道吗
我的python实现:
import numpy as np
def simulate(n):
prob = np.array([0.25]*4)
ans = np.random.choice(np.arange(4),1,p=prob)
if ans == 0:
n = n - 1
if ans == 1:
pass
if ans == 2:
n = n * 2
if ans == 3:
n = n*3
return n
count = 0
for i in range(10000):
nold = 1
while True:
nnew = simulate(nold)
if nnew == 0: #amoeba has died
count += 1
break;
nold = nnew
我得到一个无限循环。有人能帮忙吗?谢谢。答案是41%
While循环需要某种断点。你知道吗
你没有设置什么是错误的。你知道吗
相关问题 更多 >
编程相关推荐