|
没验证,提供个思路,可以自己验证一下
- def func(year): # 一对熊猫的一生,生下的崽崽继续递归调用类似于树形结构的顶点,下的崽崽是下一个顶点
- num = 1 #该顶点,初始一对熊喵
- for i in range(4,15,3): #4年成熟,活15年,成熟后3年一对崽
- if year+i > 2018: #时间达到2018时,返回该顶点对应的子节点数,并进入相邻的另一分支
- return num
- num += func(year+i) #每三年生下一对崽崽,崽崽又是一个顶点,递归调用进入崽崽对应的下一层顶点。
- num -= 1 #活15年后该对死翘翘了,数目减一,注意,所有节点只要时间到了十五年,都不会计数(初始数量为一,这再减1)
- return num #返回对子节点的数目
复制代码
|
|