`

牛数问题解析

F# 
阅读更多

一个农夫养了一头牛,三年后,这头牛每年会生出1头牛,生出来的牛三年后,又可以每年生出一头牛……问农夫10年后有多少头牛?n年呢?

这里主要谈一下解决这种问题的思想。首先可以联系斐波那契数列,设f(n)为第n年的牛,则

f(n) = f(n - 1) + f(n - 2)————>表达式1-1

即第n年的牛为去年牛的个数f(n - 1)加上今年出生牛的个数,那么今年有多少头牛能生呢?(不考虑死亡的牛)则为前年牛的个数即f(n - 2),因为前年的牛今年至少3岁,即为表达式1-1

 

 

推广一下,将牛生育年龄设为m,那么计算的表达式就变为

f(n) = f(n - 1) + f(n - m + 1)————>表达式1-2

n-1年牛的个数加上n-m+1年的牛生出的小牛。

 

那么下面讨论一个稍微复杂点的问题,如果增加一个条件,即牛会在第8年死去,那么第n年会有多少条牛呢?

为了便于推导,这里先设几个函数:

·         f(n)即第n年牛的个数

·         h(n)即第n年出生的牛的个数

·         g(n)即第n年死亡的牛的个数

那么这里可以首先想到一个表达式:

(1)f(n) = f(n -1) + h(n) - g(n)

即第n年牛的个数为第n-1年牛的个数+n年出生的牛的个数-n年死亡的牛的个数

而第二个表达式即关于新增牛的个数h(n)的:

(2)h(n) = f(n - 2) - g(n - 1)

即第n年出生的牛的个数为第n-2年牛的个数减去在第n-1年死亡的牛的个数

再看第三个表达式关于第n年死亡的牛的个数的:

(3)g(n)=h(n - 7)

即第n年死亡的牛的个数为第n - 7年出生的牛的个数,这是一个对称的关系。

 

推导的步骤如下,将(2)代入(1)

f(n) = f(n - 1) + f(n - 2)- g(n - 1) - g(n)---->4

再将(3)式代入(4)

f(n) = f(n - 1) + f(n - 2) - h(n - 8) - h(n - 7)----->(5)

再将(2)式代入(5)的h(n - 7)

f(n) = f(n - 1) + f(n - 2) - (h(n - 8) - f(n - 9) + g(n - 8))

到了这里不难看出(h(n - 8) + f(n - 9) - g(n - 8))即为f(n - 8)通过式(1)

则最终的表达式为

f(n) = f(n - 1) + f(n - 2) - f(n - 8)

即第n年牛的个数为第n-1年牛的个数+n-2年牛的个数-n-8年牛的个数

当牛的生育年龄用a表示,死亡年龄用b表示时,则表示为:

f(n) = f(n - 1) + f(n  a + 1) - f(n - b)

 

源码如下:

//f(n)=f(n-1)+f(n-a+1)-f(n-b)

 

int a=3;

int b=8;

int cowCount(int n)

{

    if(n<=0) return 1;

    else if(n==1) return 2;

    else return cowCount(n-1)+cowCount(n-a+1)-cowCount(n-b);

}

分享到:
评论

相关推荐

    喝牛奶问题——数形结合的解题策略.docx

    4. **实际问题的解决**:乐乐喝牛奶的问题要求学生分析实际情况,如第一次喝了半杯,第二次又喝了半杯,但第二次喝的是含有牛奶和水的混合物。这里的关键是理解“半杯”在不同情境下的含义,以及如何通过数学模型来...

    牛吃草问题练习与答案解析.doc

    "牛吃草问题"是一种经典的数学问题,通常出现在小学高年级至初中低年级的数学教材中,它涉及到了数量变化和动态平衡的概念。这类问题的关键在于理解草的生长和牛的消耗之间的关系,并通过建立数学模型来解决问题。 ...

    喝牛奶问题PPT课件.pptx

    7. **数量关系的分析**:在饲料加工的问题中,涉及到第一天和第二天加工饲料的量,以及它们之间的关系。这是一个简单的数量关系问题,可以通过列方程或直接相加来解决。 总结来说,这些课件中的知识点主要包括分数...

    牛吃草问题例题详解(含练习和答案解析).doc

    这样,我们就可以算出原有的草量,进而解决给定牛头数时草可以吃多久的问题。 例2是一个变型的牛吃草问题,这里将草地换成了一个进水管和出水管的水池。水的流入和流出类似于草的生长和被吃掉。通过计算不同组合下...

    牛牛数据处理器牛牛数据处理器

    牛牛数据处理器应提供功能强大的数据清洗工具,帮助用户快速识别并修正这些问题。 3. **数据转换**:数据转换包括数据类型转换、单位转换、编码转换等,确保数据的一致性和可用性。 4. **数据分析**:内置统计分析...

    牛吃草问题全面练习题一.doc

    【牛吃草问题】是数学中的经典应用题型,主要涉及的是动态平衡和比例关系的分析。这类问题通常设定有某种资源(如草)在被消耗的同时也在不断补充,求解的是在特定条件下资源能够持续多久。以下是针对题目中给出的牛...

    六年级奥数-牛吃草问题-教师讲义.doc

    练习题1-9都是牛吃草问题的变体,要求通过分析不同条件下牛头数和吃的天数,找到草的生长速度和原有草量,然后计算出新的牛头数下可以吃草的天数。通过解决这些题目,可以加深对牛吃草问题的理解和应用。 总的来说...

    行测数量盈亏和牛吃草问题非常好的思路和解析附练习题.doc

    总结来说,盈亏问题和牛吃草问题都是利用差值关系来求解未知数的典型应用,它们要求我们具备较强的观察力、逻辑推理能力和数量关系分析能力。解决这类问题时,关键在于识别和利用数量之间的差异,找到关键的等量关系...

    [晨风推荐]数学运算之牛吃草问题归纳.pdf

    通过以上分析,我们可以看出牛吃草问题的解题策略是找到动态平衡点,通过设置合适的变量构建方程组,然后求解。这种问题类型锻炼了解决问题的逻辑思维能力和对数量关系的理解。无论是基础的还是复杂变形的牛吃草问题...

    趣谈“分牛问题”实用.pdf

    在现代,分牛问题常被用作启发式教学的例子,用来教授学生如何通过设立变量和方程来解决实际问题,以及如何运用逻辑思维来分析问题的结构。 如果我们尝试把您提供的内容看作是一组数字编码,那么我们可能会猜测其...

    奶牛分配测试数据

    在这个问题中,我们需要理解如何有效地解决奶牛分配的问题,并分析提供的测试用例。 首先,"奶牛分配"可能涉及到的是一个优化问题,比如如何在有限的资源(如牛棚或牧草)下,合理地安排奶牛的位置,使得每个奶牛都...

    小学数学牛吃草问题综合讲解.doc

    3. 分析21头牛的情况:72 ÷ (21 - 15) = 72 ÷ 6 = 12天 所以,21头牛可以在12天内吃完草。 除了牛吃草问题,这类问题还可以扩展到其他场景,如排队购票、大坝泄洪、抽水机抽水等。无论形式如何变化,核心都是找...

    金牛座性格特点分析.doc

    牛能咬牙撑过创业维艰的时期,却在事业遇到突破性的瓶颈问题时,会闹情绪。情绪化是牛的大敌。 金牛座的人对家庭的看法与想像是一致的。有好食物、好家具、好孩子以及一条好狗或好猫,才像个家。而如果金牛座结婚的...

    竞品分析报告:老虎证券 VS 富途牛牛.pdf

    然而,老虎证券在下载量和用户活跃度方面表现出色,开户用户数与富途牛牛相当,且人均交易额和换手率更高。 2.3 产品迭代史 2.3.1 富途牛牛 富途牛牛自2013年起,从港股市场拓展至美股市场,逐步完善基础功能,如...

    部编版第39周牛吃草问题.doc

    "牛吃草"问题,又称为“牛顿问题”,是一种经典的数学问题,源自英国科学家艾萨克·牛顿提出的思考题。这个问题的核心在于处理变化中的静态平衡,即在某些资源(如草)随时间变化(如生长)的情况下,计算固定数量的...

    verilog+牛客网刷题自己编写代码汇总+时序分析+状态机等+刷题学习

    VL7 求两个数的差值 VL8 使用generate…for语句简化代码 VL9 使用子模块实现三输入数的大小比较 VL10 使用函数实现数据大小端转换 02 组合逻辑 VL11 4位数值比较器电路 VL12 4bit超前进位加法器电路 VL13 优先编码器...

    头豹研究院-2024年中国儿童牛奶市场洞察:成长的力量,解析中国儿童牛奶消费趋势.pdf

    《头豹研究院-2024年中国儿童牛奶市场洞察:成长的力量,解析中国儿童牛奶消费趋势》报告深入分析了中国儿童牛奶市场的现状和发展趋势,旨在为行业内外提供最新的市场动态和前瞻性的预测。 #### 市场规模与发展趋势...

    牛拉法计算潮流的matlab程序

    本程序是使用牛拉法(Newton-Raphson method)来计算潮流的 Matlab 程序,主要用于电力系统的潮流计算和分析。该程序可以计算电力系统中的节点电压、支路潮流、发电机功率、负荷功率等参数,并可以对电力系统进行...

    完整第39讲 “牛吃草”问题.doc

    总的来说,解决牛吃草问题的关键是抓住静态量(如原有的草量或扶梯的总台阶数)和动态量(如新长出的草量或扶梯的运行速度),并通过数学方法进行计算。这类问题培养了我们对变化中的定量关系的理解和处理能力,对于...

Global site tag (gtag.js) - Google Analytics