public static void main(String[] args) {
/**
* 需求:有一对兔子,从出生后第3个月起每个月都生一对兔子,
* 小兔子长到第三个月后每个月又生一对兔子,
* 假如兔子都不死,问第二十个月的兔子对数为多少?
*
* 规律是这样的
* 第一月 共有1对兔子
* 第二月 共有1对兔子
* 第三月 共有2对兔子 (新生1对)
* 第四月 共有3对兔子 (又新生1对,第二对新生兔子)
* 第五月 共有5对兔子 (最老的那一对生了一对,第三月出生的兔子也生了一对)
* 第六月 共有8对兔子 (最老的那一对生了一对,第三月出生的兔子也生了一对,第四月出生的兔子也生了)
*
*/
//定义长度为20的数组,代表20个月。
int [] arr=new int[20];
//第一个月有一对兔子
arr[0]=1;
//第二个月有一对兔子
arr[1]=1;
//第三个月有2对兔子
arr[2]=2;
for(int i=2;i<arr.length;i++) {
arr[i]=arr[i-1]+arr[i-2];
}
System.out.println(arr[19]);
}
不死兔(斐波那契数列)
最新推荐文章于 2022-04-09 22:24:41 发布