原题链接:http://acm.hdu.edu.cn/showproblem.PHP?pid=2018
题目分析:第1年,母牛数量为1。 num[1]=1
第2年,母牛数量为2。 num[2]=2
第3年,母牛数量为3。 num[3]=3
第4年,母牛数量为4。 num[4]=4
第5年,总的母牛数量为第4年已经存在的“老牛”,加上第2年时候(因为第2年的母牛们都可以生产小牛了)的母牛们新生出的小牛们。即num[4]+num[2]。
。。。。。。。
第n年,母牛的数量为num[n-1] + num[n-2].
import java.io.BufferedInputStream;
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner sin = new Scanner(new BufferedInputStream(System.in));
int[] nums = new int[56];
nums[1] = 1;
nums[2] = 2;
nums[3] = 3;
nums[4] = 4;
for(int i=5; i<56; i++)
{
nums[i] = nums[i-1] + nums[i-3];
}
int year = 0;
while((year=sin.nextInt())!= 0)
{
System.out.println(nums[year]);
}
sin.close();
}
}