`
GYJGYJJ
  • 浏览: 4605 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

母牛生小牛问题 简单代码实现思路

    博客分类:
  • Java
 
阅读更多
题目:一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第20年时有多少头母牛?

无聊做做,当个笔记

这种题目,数学厉害和数据机构学的好的人应该勾出个规律就有大致答案了。智商一般的我想了想java的思路实现:
1、写一个class: 存放增长年龄  (int 型)、 生小牛的年龄 (final int 型)

2、在此类构造方法:参数为int x;  目的是为了初始化母牛年龄。

3、可以用两个集合来存取母牛和生下来的小牛的数量 listA   listB

4、循环20年 再子循环母牛的头数 如果存放的增长年龄大于等于4年(也就是生小牛的年龄) 则listB.add(class的构造方法(0))  得到小牛的数量

5、最后listA.addAll(listB) 得到20年后的数量



/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第20年时有多少头母牛?
		Test1 t = new Test1();
		System.out.println(t.getAll(20));
				
	}
public static int getAll(int year){
		List<A> listA = new ArrayList<A>();	//母牛数
		List<A> listB = new ArrayList<A>();	//母牛生下来的小母牛
		//假如现在就第四年 开始生了
		listA.add(new A(4));	//有一头母牛能生(满了4年了)
		
		for(int i=0;i<year;i++){	//在20年之内的总和
			listB.clear();
			for(int j=0;j<listA.size();j++){	//把j只母牛++
				A a = listA.get(j);
				//如果这只母牛的年龄有4年了,循环20年每年大一岁
				a.setAgemu(a.getAgemu()+1);
				if(a.validata()){
					listB.add(new A(0));	//增加一只小母牛
				}
			}
			
			listA.addAll(listB);
		}
		return listA.size();
	}

class A{
	private final int age =4;	//固定4年
	private int agemu;	//递增的年数
	
	public A(int a){
		agemu = a;
	}
	
	public boolean validata(){
		if(agemu>age){
			return true;
		}
		return false;
	}
	
	public int getAgemu() {
		return agemu;
	}
	public void setAgemu(int agemu) {
		this.agemu = agemu;
	}
	
	
	
	
	
}

分享到:
评论

相关推荐

    c 源码 母牛生小牛问题 递归实现

    在编程领域,"母牛生小牛问题"是一个经典的递归问题,通常用于教授和理解递归算法。这个问题描述了一头小母牛从第四年开始每年生一头小母牛的情况,询问在第N年时共有多少头母牛。下面我们将详细讨论这个问题的递归...

    母牛生小牛问题

    这是一道编程题目 母牛生小牛 我编的还不错啊 呵呵

    母牛生小牛的C语言算法

    roblem 2 母牛生小牛问题 设有一头小母牛,从出生第四年起每年生一头小母牛,按此规律,第N年时有几头母牛? Input 本题有多组数据。每组数据只有一个整数N,独占一行。(1≤N≤50) Output 对每组数据,输出一个...

    c++:母牛生小母牛问题 (类方法)

    ### C++ 母牛生小母牛问题详解 #### 一、问题描述与解析 在本问题中,我们探讨的是一个有趣的递增序列问题,即假设每头小母牛从出生后第四个年头开始每年生一头母牛,那么在第 n 年时会有多少头母牛?这个问题可以...

    c++:母牛生小母牛问题(递归)

    ### C++ 母牛生小母牛问题(递归) #### 问题描述与解析 在本问题中,我们遇到了一个有趣的数学问题:假设有一头小母牛,它从出生的第四年开始,每年都会生一头小母牛。根据这一规律,我们需要计算在第 N 年时,...

    递归大牛4年生小牛问题

    在IT领域,尤其是在编程与算法设计中,递归是一种极为重要的技术手段,它不仅能够简化代码,还能在解决复杂问题时提供清晰的思路。本文将深入探讨“递归大牛4年生小牛问题”,这是一个典型的递归问题,旨在帮助初学...

    C语言母球生小牛

    问题描述为:“母牛生小牛,从第4年开始生小牛,问一共多少只牛。”这意味着,每头母牛在出生后的前三年不会生育,但从第四年开始,每年会生一头小牛。问题是计算在n年后,农场上总共有多少头牛。 ### 解析C语言...

    C语言关于母牛问题的计算代码

    x年出生的母牛从第x+m年开始到第x+n年止(含, 1 )每年生小母牛一头,并在第x+p(n )年被淘汰。设第0年有刚出生的小母牛一头,求第k(k &gt; 0)年存栏母牛多少头。 【输入形式】 从标准输入上顺序读入正整数m、n、p...

    c++中有关母牛问题的程序代码

    问题描述: 假设单性繁殖成立,一头母牛从出生第四年起每年生一头母牛,生出的小母牛在四岁时也将具有生殖能力。以此类推,第n年时有多少头母牛?

    编程求解母牛问题。若一头母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第N年时有多少头母牛?

    若一头母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第N年时有多少头母牛?

    母牛问题关于C++

    关于母牛生小牛的客观问题,需要C++的一定素养,但是不得因为邮件而阅览

    母牛繁殖问题

    在JavaAdvanced这个文件夹中,可能包含了实现这个问题的源代码文件,如主程序类、母牛类、繁殖模拟类等。通过分析这些源码,我们可以深入理解问题的具体实现方式和解决策略。同时,如果代码包含注释,那么它将帮助...

    小母牛问题

    有一头小母牛,从出生四年后,每年生一头小母牛,每头小母牛都遵从第一头小母牛的规律,求第N年共有多少头小母牛?

    母牛问题

    x年出生的母牛从第x+m年开始到第x+n年止(含, 1 )每年生小母牛一头,并在第x+p(n )年被淘汰。设第0年有刚出生的小母牛一头,求第k(k &gt; 0)年存栏母牛多少头。 【输入形式】 从标准输入上顺序读入正整数m、n、p、k...

    第n年有多少头母牛的python代码方案

    问题:母牛从3-7岁初每年会生产1头小母牛,10岁后死亡(10岁仍然存活),假设初始有1头刚出生的母牛,请问第n年有多少头母牛?(年从第一年开始计数)

    母牛难产预防和救助原则.doc

    母牛难产是养牛业中常见的问题,尤其在农户和小规模养牛户中,它不仅对母牛的健康构成威胁,还可能导致经济损失。预防和及时处理母牛难产对于保障养牛户的收益至关重要。以下是预防和救助母牛难产的关键措施: 1. *...

    广东省博罗县泰美中学七年级数学下册 8.1 二元一次方程组学案2(无答案)(新版)新人教版

    1. **实际问题与方程组的联系**:通过二元一次方程组,学生能够理解如何将生活中的实际问题转化为数学问题,如在饲料分配问题中,通过设立未知数,将母牛和小牛每天所需饲料量表示出来,然后建立方程来解决。...

    农场与母牛

    学习源码可以理解程序的设计思路,分析算法,以及优化代码。 2. **面向对象编程**: “农场与母牛”可能是一个关于面向对象编程(OOP)的例子。在这个场景下,我们可以创建“农场”和“母牛”类,每个类都有自己的...

    一些简单的acm题.docx

    【母牛生小牛】 这是一个简单的指数增长问题。根据题目,小母牛从第四年开始每年生一头小母牛,所以第N年的母牛数量可以用等比数列的公式来计算。例如,对于输入5,第一年有1头母牛,第二年和第三年没有新生的小...

    农产规划问题LINGO代码

    农场规划最全面的lingo代码 model: title 农场规划问题; sets: year/1,2,3,4,5,6/:s,x,m,q,y,n,r,z,p; age/1..12/; cow_number(year,age):B; endsets !变量说明: s-每年卖的初生小母牛的数目(单位:只) z...

Global site tag (gtag.js) - Google Analytics