public class RabbidsCount2 {
public static void main(String[] args) {
// 直接从第三个月开始算起
int m1=1;
int m2=0;
int m3=1;
for(int i=3;i<40;i++){
m1=m1+m2;
m2=m3;
m3=m1;
}
System.out.println(m1+m2+m3);
}
}
第二种解法:
public static void main(String args[]){
int i=0;
for(i=1;i<=40;i++)
System.out.println(f(i));
}
public static int f(int x)
{
if(x==1 || x==2)
return 1;
else
return f(x-1)+f(x-2);
}
第二种解法我不太懂,假如将刚生的小兔子第一次生小兔子是隔四个月,则我不知道第二种解法该如何解答。望各位进行留言,进行帮助,不胜感激