首页 > 分享 > 兔子繁殖与斐波那契数列

兔子繁殖与斐波那契数列

兔子繁殖问题

最新推荐文章于 2024-01-15 08:13:53 发布

原创 于 2014-06-16 16:40:05 发布 · 1.2k 阅读

· 0

· 0 ·

CC 4.0 BY-SA版权

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

11 篇文章

1.成年兔子,每年能生一对兔子,小兔子两年后成年,某人有一对兔子,假设兔子不死,且每次所生的兔子,都能恰好一对,则n年后,该人有兔子多少只?

我们可以容易想到,第n年的兔子数量为第n-1和n-2年兔子数量之和.(亦如斐波那契数列)

思路如下,也可以递推得到.

#include <stdio.h>

int getNum(int n)

{

if(n==1||n==2)

return 1;

else

return getNum(n-1)+getNum(n-2);

}

int main()

{

int n;

printf("input number:n");

scanf("%d",&n);

while(n>=1)

{

printf("The Number of rabit is:%dn",getNum(n));

printf("inputnumber:n");

scanf("%d",&n);

}

return 0;

}

cpp

运行

2.关于斐波那契数列的求法可以用
F(n)        = | 1 1 | × | F(n-1) | = | 1 1 | ^ (n-1) * | 1 |
F(n-1)        | 1 0 |    | F(n-2) |    | 1  0|                 | 1 |
有阵可以快速幂来求,此法可以提高效率。

3.那如果有每只兔子寿命都只有四年第n年的兔子在n+4年会死亡。那麽如下即可
第n年的兔子数量为第n-1和n-2年兔子数量之和减去n-4年的兔子.  

#define NUMBER rabitcount

#include <stdio.h>

int getNum(int n)

{

if(n==1||n==2)

return NUMBER;

else

return getNum(n-1)+getNum(n-2);

}

int getNum(int n)

{

if(n==1||n==2)

return 1;

else if(n==3)

return 2;

else if(n==4)

return 3;

else if(n==5)

return 4;

else

{returngetNum(n-1)+(getNum(n-2)-getNum(n-4);}

}

cpp

运行

相关知识

斐波那契数列(兔子繁殖)问题
斐波那契数列python实现,时间/空间复杂度比较
兔子几个月开始繁殖
兔子繁殖 (30 分) 兔子繁殖问题。
兔子繁殖问题
兔子繁衍奥数题及答案
求兔子繁殖问题,求帮帮忙
PTA 习题4
斐波那契数列问题
兔子繁殖问题,求解大神。

网址: 兔子繁殖与斐波那契数列 https://m.mcbbbk.com/newsview1345333.html

所属分类:萌宠日常
上一篇: 巨型花明兔怎么选?这6个要点要记
下一篇: 最便宜的宠物鱼,什么宠物鱼便宜