这种题其实看着复杂只要推导前几个数就很好理解了
兔子的规律为数列1,1,2,3,5,8,13,21....
从第三项开始数值为前两项之和。
public static int fun(int n){
if(n==1||n==2){ //如果是前两个月则兔子数是1
return 1;
}
return (fun(n-1)+fun(n-2)); //第三个月开始为前两个月之和
}
public static void main(String[] args)
{
//定义要求第10 个月的兔子对数
int n = 10;
System.out.println("第"+ n +"个月的兔子对数为:" + fun(10));
} |