倒计时17

一、母牛的故事

时间限制: 1Sec 内存限制: 128MB

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

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

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

样例输入
2
4
5
0
样例输出
2
4
6

思路:找规律
第一年 1
二 2
三 3
四 4
五 6
六 9
四年初 小母牛就开始每年生一个 按三四五年左右的找下规律
4=3+1
6=4+2
9=6+3
即f(n)=f(n-1)+f(n-3)
当年牛的数量 是在上一年的基础上 加上可以生育的牛的数量

package day1;

import java.util.Scanner;
/**
 * 有一头母牛,它每年年初生一头小母牛。
 * 每头小母牛从第四个年头开始,每年年初也生一头小母牛。
 * 请编程实现在第n年的时候,共有多少头母牛?
 * */
public class q1004 {
	public static void main(String[] args) {
		
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		
		while(n!=0){
			int []num={1,2,3};
			
			if(n<=3){
				System.out.println(num[n-1]);
				
			}else{
				int res=0;
				int i=3;
				while(i<n){
					res=num[0]+num[2];
					num[0]=num[1];
					num[1]=num[2];
					num[2]=res;
					i++;
//					System.out.println(num[0]+"~"+num[1]+"~"+num[2]+"~");
				}
				System.out.println(res);
			}
			
			n=sc.nextInt();
		}
	}
}

二、用筛法求之N内的素数。

时间限制: 1Sec 内存限制: 64MB

题目描述
用筛法求之N内的素数。
输入
N
输出
0~N的素数
样例输入
100
样例输出
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97
思路:介绍在这里(维基百科)emmm…很简单的一个题,我竟然浪费了很长时间

package day1;

import java.util.Scanner;

public class q1084 {
	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		int []num=new int[n+1];
//		for(int i=0;i<=n;i++){
//			num[i]=i;
//		}
		
		
		int tmp=2;
		int t=3;
		while(tmp<=n){
			while(t<=n){
				if(t%tmp==0&&num[t]!=1){
					num[t]=1;
				}
				t++;
				
			}
//			for(int i=0;i<=n;i++){
//				System.out.print(num[i]+ " ");
//			}
//			System.out.println("~~~~~~"+tmp);
			tmp+=1;
			while(tmp+1<n&&num[tmp]==1){
				tmp++;
			}
			t=tmp+1;
		}
		for(int i=2;i<=n;i++){
			if(num[i]!=1){
				System.out.println(i);
			}
		}
		
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值