Python|生物增殖问题解决方法
作者:互联网
问题描述
假设有两种生物X,Y,X出生后每隔3分钟分裂一次(数目加倍),Y出生后每隔2分钟分裂一次(数目加倍)。一个新出生的x,半分钟之后吃掉1个Y,并且从此开始,每隔1分钟吃1个Y。现在已知有新出生的X=10,Y=90,求60分钟后Y的数目。
解决方案
有一个令人纠结的点是,刚开始新出生的X每过半分钟就会吃掉一个Y,然后每一分钟吃掉一个Y,写出前几分钟的变化过程:
1min:y=y-x
2min: y=y-x, y=2y
3min: y=y-x, x=2x
4min: y=y-x, y=2y
x=10 y=90 i=1 while i<61: y=y-x if i%3==0: x=x*2 if i%2==0: y=y*2 i+=1 print(x,y) |
标签:吃掉,Python,增殖,分钟,出生,生物,90,每隔,i% 来源: https://blog.51cto.com/u_15281984/2956226