有一只兔子,从出生后第3个月起每个月都生一只兔子,小兔子长到第三个月后每个月又生一只兔子,假如兔子都不死,问每个月的兔子总数为多少?
/**
* 统计出兔子总数。
*
* @param monthCount 第几个月
* @return 兔子总数
*/
public static int getTotalCount(int monthCount)
{
return 0;
}
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
while(sc.hasNext()){
int monthCount = sc.nextInt();
int total = getTotalCount(monthCount);
System.out.println(total);
}
sc.close();
}
public static int getTotalCount(int monthCount){
int total = 0;
if(monthCount > 0 && monthCount < 3){
return 0;
}
if(monthCount == 3){
return 2;
}
if(monthCount == 4){
return 3;
}
if(monthCount >= 5){
total = total + getNewCount(monthCount + 2);
}
return total;
}
public static int getNewCount(int monthCount){
if(monthCount < 3){
return 0;
}
int newCount = 0;
if(monthCount == 3 || monthCount == 4){
return 1;
}
if(monthCount >= 5){
newCount = getNewCount(monthCount - 1) + getNewCount(monthCount - 2);
}
return newCount;
}
}