题解 | #统计每个月兔子的总数#
统计每个月兔子的总数
https://www.nowcoder.com/practice/1221ec77125d4370833fd3ad5ba72395
''' 递归运算, 第1、2个月兔子总数为1没有兔子繁殖, 第3个月开始兔子开始繁殖, 2月兔长到第3个月立马下崽, 第n个月的1月兔等于上个月的2月兔、3月兔的总和, 第n个月的2月兔等于上个月的1月兔, 第n个月的3月兔等于上个月的2月兔、3月兔之和。 ''' n = int(input())#输入要统计的月份 sum = 0#兔子的总和 if n < 3:#如果月份小于3(在第1、2个月),兔子总数为1 sum = 1 else:#月份超过第2个月(3月份开始) n1 = 0 n2 = 1 n3 = 0 for i in range(2,n): info = n1#标记位记录上个月的1月兔 n1 = n3 + n2#本月的1月兔等于上月的2月兔、3月兔之和 n3 += n2#本月的3月兔等于上月的2月兔、3月兔之和 n2 = info#本月的2月兔等于上月的1月兔 sum = n1 + n2 +n3#本月兔子总数等于本月的1、2、3月兔总和 print(sum)#输出本月兔子总数
#华为机试#