题解 | #统计每个月兔子的总数#

统计每个月兔子的总数

http://www.nowcoder.com/practice/1221ec77125d4370833fd3ad5ba72395

通过分析可以发现大兔子的总和和小兔子的总和增长满足斐波那契数列,并且当月大兔子的数量是上个月小兔子的数量,也就是说是斐波那契数列的当前项和上一项的和,即小兔子本月的数量加上上月的数量

#大兔子0 0 1 1 2 3 5 8
#小兔子1 1 1 2 3 5 8 13

n=int(input())
def f(num):
    if num==1 or num==2:
        return 1
    else:
        return f(num-1)+f(num-2)
if n<=2:#前两个月1只小兔子
    print('1')
elif n==3:
    print('2')
elif n>3:#第四个月开始小兔子的数量相当于斐波那契数列的第三项
    print(f(n-1)+f(n-2))

全部评论

相关推荐

牛客868257804号:九个中铁八个中建
点赞 评论 收藏
分享
牛客410815733号:这是什么电影查看图片
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务