ZZULIOJ问题 A: 母牛的故事

题目描述

有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?

 

 

输入

输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0<n<55),n的含义如题目中描述。
n=0表示输入数据的结束,不做处理。

 

 

输出

对于每个测试实例,输出在第n年的时候母牛的数量。
每个输出占一行。

 

 

样例输入

2
4
5
0

样例输出

2
4
6
import java.util.Scanner;

//递推式 f(n) = n n<=4,f(n) = f(n-1) + f(n-3) n>4
public class Main {
	

    public static void main(String[] args) {
    	Scanner input=new Scanner(System.in);
    	int[] data=new int[56];
    	for (int i = 0; ; i++) {
    		data[1]=1;
        	data[2]=2;
        	data[3]=3;
			int n=input.nextInt();
			
			if(n==0)
			  break;	
			else if(n==1)
				System.out.println(data[1]);
			else if(n==2)
				System.out.println(data[2]);
			else if(n==3)
				System.out.println(data[3]);
			else{
				for(i=4; i<=n; i++)
	            {
	                data[i]=data[i-1]+data[i-3];
	            }
	           System.out.println(data[n]);
			}
		}
    	
		
    	
    	
	}
	
	
}
全部评论

相关推荐

10-20 11:11
辽宁大学 营销
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务