不死兔子的问题

题目是:

 一对兔子每月都要生一对小兔子,并且小兔子出生后四个月就可以再生一对小兔子。
     假设有一对兔子每个月都生一雌一雄两只兔子,新生的兔子四个月又升一雌一雄两只兔子。
     以此类推:n月后共有多少只兔子? (假设兔子都不会死亡)
规律是:

第1个月:1对

第2个月:1对

第3个月:1对

第4个月:1对

第5个月:2对

第6个月:3对

第7个月:4对

第8个月:5对

第9个月:7对

第10个月:10对

第11个月:14对

第12个月:19对

规律就是前四个月都是1个兔子

              [5,8]都是n-3个兔子

              [9,12]都是n-1+n-4

public static void main(String[] args) {
		// TODO Auto-generated method stub
           System.out.println(rabbitNum(12));
	}
   public static int rabbitNum(int n) {
	   if(1<=n&&n<=4) {
		   return 1;
	   }
	   if(5<=n&&n<=8) {
		   return n-3;
	   }
	   else {
		   return rabbitNum(n-1)+rabbitNum(n-4);
	   }
   }
}

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值