兔子繁殖问题

古典问题:有一-对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个服生一对兔子,假如兔子都不死,用户输入-一个月份数,计算并在- - -行内输出该月的兔子总对数以及前-一个月与该月兔子数量的比值,比值结果保留小数点后3位,数字间用空格分隔。

由上图可以看出,兔子连续两个月会进行一次更替

1月兔代表刚新的兔子,2月代表下个月可以生崽的兔子

我们可以发现,一个月的兔子总数总是可以由它的前两个月的兔子总数确定

一个月的兔子总数=当月出生的兔子总数+下个月可以生崽的2月兔

下个月可以生崽的2月兔=上个月的兔子总数

当月出生的兔子总数=其实就是上上个月的兔子总数

那么我们就可以根据这个规律进行代码实现

返回当月的兔子总数

# 兔子繁殖问题
def RabbitBreeding(month:int):if month==1:return 2if month==2:return 2else:return RabbitBreeding(month-1)+RabbitBreeding(month-2)

为了完成题目的要求,还需要创建另一个函数

def ratio(month:int):'''返回该月兔子总数与前一个月的比值:param month: 当前月份:return:当月兔子总数 比值'''current=RabbitBreeding(month)ratio_=current/RabbitBreeding(month-1)ratio_str='{:.3f}'.format(ratio_)return f'{current} {ratio_str}'

到此,完美结束

兔子繁殖问题(python递归解决)相关推荐

  1. 1055: 兔子繁殖问题 Python

    1055: 兔子繁殖问题 时间限制: 1 Sec 内存限制: 128 MB 提交: 30740 解决: 19451 [状态] [讨论版] [提交] [命题人:admin] 题目描述 这是一个有趣的古典 ...

  2. python兔子繁殖问题中如何输出相应月份的数列_斐波那契数列介绍及Python中五种方法斐波那契数列...

    Q:斐波那契数列为何那么重要,全部关于数学的书几乎都会提到? A:由于斐波那契数列在数学和生活以及天然界中都很是有用.html 1. 斐波那契数列 概念引入 斐波那契数列(Fibonacci sequ ...

  3. 【C递归和迭代】兔子繁殖问题、青蛙跳台阶问题和汉诺塔问题

    ⭐博客主页:️CS semi主页 ⭐欢迎关注:点赞收藏+留言 ⭐系列专栏:C语言初阶 ⭐代码仓库:C Advanced 家人们更新不易,你们的点赞和关注对我而言十分重要,友友们麻烦多多点赞+关注,你们 ...

  4. C语言/C++常见习题问答集锦(六十四) 之兔子繁殖(递归与非递归)

    C语言/C++常见习题问答集锦(六十四) 之兔子繁殖(递归与非递归) 程序之美 1.C语言,计算1乘以3×5*-乘n的积,并输出结果,n值由键盘接收. #include<stdio.h>v ...

  5. 递归——兔子繁殖问题

    兔子繁殖问题:题目描述 有一只兔子,从出生后第3个月起每个月都生一只兔子,小兔子长到第三个月后每个月又生一只兔子,假如兔子都不死,问每个月的兔子总数为多少? 输入描述: 输入int型表示month 输 ...

  6. 100个python算法超详细讲解:递归解决年龄问题

    [100个python算法超详细讲解]@谷哥技术 1.问题描述 有5个人坐在一起,问第5个人多少岁,他说比第4个人大2岁.问 第4个人多少岁,他说比第3个人大2岁.问第3人多少岁,他说比第2个 人大2 ...

  7. python斐波那契数列前20项_兔子繁殖问题带来的智商碾压:斐波那契数列趣谈

    本文来自公众号:超级数学建模 微信号 :supermodeling 原文标题:斐波那契数列趣谈 via 善科 by BB 一般认为斐波那契数列的提出是基于兔子的繁殖问题:如果一开始有一对兔子,它们每月 ...

  8. 100个python算法超详细讲解:递归解决分鱼问题

    1.问题描述 A.B.C.D.E这5个人合伙夜间捕鱼,凌晨时都已经疲惫不堪,于是各自在河边的 树丛中找地方睡着了.第二天日上三竿时,A第一个醒来,他将鱼平分为5份,把多余的 一条扔回河中,然后拿着自己 ...

  9. 多种方式解决兔子繁殖问题

    兔子繁殖问题: 兔子从出生的第三个月开始繁殖,此后每个月都会繁殖,且每次繁殖都为一对异性兔子. 在封闭环境中,有一对异性刚出生的兔子,不考虑死亡,求一年后有多少对兔子. //通过观察可以发现 //当前 ...

最新文章

  1. 华三DHCP分配ip
  2. windows商店_Windows记事本应用现在可以从Microsoft Store中获得
  3. 分子结构模拟工具UCSF Chimera的安装及基本操作
  4. mysql 用户与数据_MySQL经验9-用户和数据安全
  5. 男性最脆弱的五大器官
  6. VMWare 认证软件存在SSRF漏洞,可用于访问用户数据
  7. Android Studio安装以及Fetching android sdk component information超时的解决方案
  8. JWplayer入门及使用
  9. win7啊,我的纠结,ip啊
  10. 概率论与数理统计--S2数理统计概念
  11. RocketMQ(七) RocketMQ的两种消费模式
  12. i春秋 429-线上赛题(一)Writeup
  13. centos 磁盘重新分区操作实践
  14. seaborn散点图_Seaborn散点图–终极指南
  15. VR全景制作拍摄方法教程
  16. centos7安装boot分区_图文详解centos Linux系统安装教程
  17. 大一的java考试试题_华南理工大学大一JAVA复习题
  18. vue全家桶-组件内部应用守卫简洁版-防止输入框未保存的数据丢失
  19. 软件测试面试题:请写出电脑的组成及有哪些操作系统?
  20. 上百个Android开源项目分享 .

热门文章

  1. 双十一屡获冠军!TCL空调的爆品密码是什么?
  2. 20行实现一个Promise,花式秀技术
  3. python廖雪峰笔记
  4. 用UltraISO把硬盘文件制作成ISO格式
  5. 【蓝桥杯Web】2022年第十三届蓝桥杯Web大学组省赛真题解析(完整版)
  6. 分享20个高质量的免费CSS模板
  7. 文件上传漏洞实验-通过截取http请求绕过前端javascript验证进行文件上传
  8. C++知识黄金学习记录
  9. k8s命名空间删除失败,状态一直是Terminating
  10. Android的视频通话的Java代码