Java兔子问题
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
*
思路:兔子的对数为1,1,2,3,5,8,13…*。是不是很熟悉,这不就是斐波拉契数列咩。
代码如下:
package 剑指Offer;
public class RabbitInMonth {
public static int Sum(int month)
{
int sum=0;
if(month==1||month==2) sum=1;
else if(month>=3) sum=Sum(month-1)+Sum(month-2);
return sum;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int Month=10;
for(int i=1;i<=Month;i++)
{
System.out.println("第"+i+"个月的兔子是"+Sum(i)+"对。");
}
}
}
运行截图: