当前位置: 首页 > news >正文

python经典百题之兔子出生问题

这是一个经典的 Fibonacci 数列问题,可以通过递归或循环来解决。

递归方法:

由题意可知,第 n 个月的兔子数等于第 n-1 个月的兔子数加上第 n-2 个月的兔子数。设 f(n) 表示第 n 个月的兔子数,则有:

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

同时,边界条件为 f(1) = f(2) = 1。

使用 Python 实现递归方法:

def rabbit(month):if month == 1 or month == 2:return 1else:return rabbit(month-1) + rabbit(month-2)month = int(input("请输入月份:"))
total_rabbits = rabbit(month)
print("{}个月后,兔子的总数为{}".format(month, total_rabbits))

循环方法:

同样,可以使用循环的方式计算 Fibonacci 数列。用变量 a 表示前一个数,b 表示当前数,将每次计算得到的数赋值给 b,同时将 a 赋值为之前的 b,直到计算到第 n 个数,即为所求的兔子总数。

使用 Python 实现循环方法:

month = int(input("请输入月份:"))
rabbits = [1, 1]for i in range(2, month):rabbits.append(rabbits[i-1] + rabbits[i-2])total_rabbits = rabbits[-1] * 2
print("{}个月后,兔子的总数为{}".format(month, total_rabbits))

 方法三:使用生成器

def rabbits():a, b = 0, 1while True:yield ba, b = b, a+bmonth = int(input("请输入月份:"))
total_rabbits = 0
for i, r in enumerate(rabbits()):if i >= month:breaktotal_rabbits += rprint("{}个月后,兔子的总数为{}".format(month, total_rabbits*2))

相关文章:

python经典百题之兔子出生问题

这是一个经典的 Fibonacci 数列问题,可以通过递归或循环来解决。 递归方法: 由题意可知,第 n 个月的兔子数等于第 n-1 个月的兔子数加上第 n-2 个月的兔子数。设 f(n) 表示第 n 个月的兔子数,则有: f(n) f(n-1) f…...

不定积分的概念和性质

目录 原函数 不定积分 不定积分的几何意义 原函数的存在定理 不定积分的性质 不定积分是微积分的一个关键部分,它涉及到一个函数的不定积分的计算。不定积分可以理解为求一个函数的原函数,也被称为反导数。原函数是一个函数,使得该函数的…...

远程访问服务器JupyterLab的配置方法

远程访问服务器JupyterLab的配置方法 环境及工具注意 基本步骤生成密码生成并修改配置文件*错误:jupyter localhost 已拒绝连接*后台运行jupyter后台关闭 其实就是在服务器运行JupyterLab,然后在本地浏览器访问 环境及工具 服务器:Ubuntu 1…...

Java native 关键字

如你在看 JDK 的源代码的时候,大概率会看到很多方法使用了 native 关键字。 下面是 String 对象 JDK 中的源代码,就带有了一个 native 关键字。 native 是干什么用的 简单来说就是 Java 的 native 方法的实现不是用 Java 实现的,可能在其他…...

【线性代数】沉浸式线性代数在线学习网站

地址:http://immersivemath.com/ila/index.html 这是全球第一本带交互式图形的线性代数教材,作者是 J. Strm, K. strm, and T. Akenine-Mller。 全书一共十章,各章节内容如下: 接下来我将对各章节进行简单的总结,另外…...

Kotlin中特性、数据类、伴生对象、顶层函数

Kotlin中的函数参数和属性声明 在 Kotlin 中,函数参数和属性有不同的声明方式和行为。这些特性使得 Kotlin 代码更加安全、易于理解和维护。 函数参数的只读性 fun sum(a: Int, b: Int): Int {var modifiedA aif (modifiedA > 0) {modifiedA 1}//三元表达式v…...

《PostgreSQL物化视图:创建、维护与应用》

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🐅🐾猫头虎建议程序员必备技术栈一览表📖: 🛠️ 全栈技术 Full Stack: &#x1f4da…...

shell脚本之test命令

shell脚本之test命令 数值比较:2. 字符串比较:3. 文件测试:4. 逻辑操作:5. 其他测试: test命令在Shell脚本中用于进行条件测试和条件判断。它用于检查文件、字符串和数值的各种条件,并返回一个状态码&#…...

JAVA设计模式8:装饰模式,动态地将责任附加到对象上,扩展对象的功能

作者主页:Designer 小郑 作者简介:3年JAVA全栈开发经验,专注JAVA技术、系统定制、远程指导,致力于企业数字化转型,CSDN博客专家,阿里云社区专家博主,蓝桥云课讲师。 目录 一、什么是装饰模式二、…...

Linux学习之MySQL备份

xtrabackup资源下载 完全备份与恢复 # 1.物理备份与恢复 # 冷备份,需停止数据库服务 适合线下服务器。 [rootmysql50 ~]# systemctl stop mysqld [rootmysql50 ~]# mkdir /bakdir [rootmysql50 ~]# cp -r /var/lib/mysql /bakdir/mysql.bak [rootmysql50 ~]# cd /…...

时序分解 | MATLAB实现北方苍鹰优化算法NGO优化VMD信号分量可视化

时序分解 | MATLAB实现北方苍鹰优化算法NGO优化VMD信号分量可视化 目录 时序分解 | MATLAB实现北方苍鹰优化算法NGO优化VMD信号分量可视化效果一览基本介绍程序设计参考资料 效果一览 基本介绍 北方苍鹰优化算法NGO优化VMD,对其分解层数,惩罚因子数做优化…...

分类预测 | Matlab实现RBF-Adaboost多特征分类预测

分类预测 | Matlab实现RBF-Adaboost多特征分类预测 目录 分类预测 | Matlab实现RBF-Adaboost多特征分类预测效果一览基本介绍研究内容程序设计参考资料 效果一览 基本介绍 1.Matlab实现基于RBF-Adaboost数据分类预测(Matlab完整程序和数据) 2.多特征输入…...

【Java代码规范】阿里编码规约 VS CheckStyle

全文速览: 1、关于代码编码质量2、如何小成本有效管理企业内的编码规范 2.1 阿里编码规约IDE插件2.2 CheckStyle IDE插件 3、如何在代码提交中检验规范 3.1 阿里编码规约配置git precommit check3.2 CheckStyle配置git precommit check3.3 实践 1、关于代码编码质…...

iPhone苹果15手机圆点怎么设置让屏幕上显示出来圆形图标?

iPhone苹果15手机圆点怎么设置让屏幕上显示出来圆形图标? 1、在iPhone苹果手机上找到「设置」并点击打开; 2、在苹果iPhone设置内找到「辅助功能」并点击打开; 3、在苹果iPhone手机辅助功能内的动作交互内找到「触控」并点击打开&#xff1b…...

kibana报错内存溢出问题解决

一、背景: kibana内存溢出,进程被kill掉,导致前端页面访问不到。 报错内容 二、报错原因: 发现是前端 js 报的内存 oom 异常,通过网上资料发现node.js 的默认内存大小为1.4G Node 中通过 JavaScript 使用内存时只能…...

【C语法】1124循环结构

#include <stdio.h> int main(){ //输入一个数。倒叙输出各个位上的数。 //123456 6 5 4 3 2 1 // 1输出个位上的数 %10 // 2将这个数去掉个位上的数。 / 10 // 3当这个数最后变成0时结束 int a 0; printf("请输入一个正整数&#xff1a;"); scanf…...

在PHP8中向数组添加元素-PHP8知识详解

在php8中向数组添加元素有多种方法&#xff0c;在这里主要讲解几个常用的方法&#xff1a;使用方括号[]添加元素、使用array_unshift()函数&#xff0c;向数组的头部添加元素、使用array_push()函数&#xff0c;向数组的尾部添加元素、使用array_splice()函数添加元素。 1、使用…...

Drupal __ 8.5.0 __ XSS文件上传 __CVE-2019-6341

Drupal __ 8.5.0 __ XSS文件上传 __CVE-2019-6341 说明内容漏洞编号CVE-2019-6341漏洞名称Drupal XSS漏洞漏洞评级中危影响范围在7.65之前的Drupal 7版本中&#xff1b; 8.6.13之前的Drupal 8.6版本; 8.5.14之前的Drupal 8.5版本。漏洞描述Drupal诞生于2000年&#xff0c;是一…...

Pycharm中配置Celery启动

Pycharm中配置Celery启动 前置条件 目录结构 ----FerDemo --------celery_demo ------------tasks.py tasks.py文件代码 import sys import time from celery import Celeryapp Celery(demo,backendredis://:password127.0.0.1/0,brokerredis://:password127.0.0.1/1,broker…...

Jmeter —— 常用的几种断言方法(基本用法)

在使用JMeter进行性能测试或者接口自动化测试工作中&#xff0c;经常会用到的一个功能&#xff0c;就是断言&#xff0c;断言相当于检查点&#xff0c;它是用来判断系统返回的响应结果是否正确&#xff0c;以此帮我们判断测试是否通过&#xff0c;本文 主要介绍几种常用的断言&…...

提升Blender渲染效率:立方盒反射烘培与材质优化指南

提升Blender渲染效率&#xff1a;立方盒反射烘培与材质优化指南 在3D创作领域&#xff0c;渲染效率与质量始终是设计师面临的核心挑战。Blender作为开源三维软件的代表&#xff0c;其渲染引擎的灵活性与强大功能为艺术家提供了无限可能&#xff0c;但同时也对硬件资源提出了较高…...

工业物联网时序数据库实战:Apache IoTDB 架构解析与性能调优指南

1. 工业物联网时序数据库的核心挑战 在智能制造和工业4.0时代&#xff0c;工厂车间里每台设备都像话痨一样不断"吐"数据——温度传感器每秒报告10次读数&#xff0c;振动监测仪每毫秒采集1组波形&#xff0c;这些数据如果堆起来&#xff0c;一年能填满几个三峡水库。…...

【国家级等保2.0工业网关合规缺口】:3步完成Python网关安全基线加固(含GB/T 22239-2024映射表)

第一章&#xff1a;工业Python网关安全基线合规总览工业Python网关作为OT与IT融合的关键枢纽&#xff0c;承担着协议转换、数据采集、边缘计算与远程控制等核心职能。其安全基线合规性直接关系到生产系统的可用性、完整性与保密性。依据IEC 62443-3-3、等保2.0三级及NIST SP 80…...

Fasd终极路线图:2025年项目发展方向与社区规划完全指南

Fasd终极路线图&#xff1a;2025年项目发展方向与社区规划完全指南 【免费下载链接】fasd Command-line productivity booster, offers quick access to files and directories, inspired by autojump, z and v. 项目地址: https://gitcode.com/gh_mirrors/fa/fasd Fasd…...

web.py终极指南:开发者最关心的20个常见问题与解决方案

web.py终极指南&#xff1a;开发者最关心的20个常见问题与解决方案 【免费下载链接】webpy web.py is a web framework for python that is as simple as it is powerful. 项目地址: https://gitcode.com/gh_mirrors/we/webpy web.py是一个简单而强大的Python Web框架&…...

5个高效方案解决League-Toolkit启动故障

5个高效方案解决League-Toolkit启动故障 【免费下载链接】League-Toolkit 兴趣使然的、简单易用的英雄联盟工具集。支持战绩查询、自动秒选等功能。基于 LCU API。 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit 问题现象&#xff1a;跨平台启动异常图谱…...

WiFi信号弱?5分钟搞懂dBi、dBm和dB的区别,选对天线不踩坑

WiFi信号弱&#xff1f;5分钟搞懂dBi、dBm和dB的区别&#xff0c;选对天线不踩坑 每次视频会议卡成PPT&#xff0c;游戏延迟飙红&#xff0c;或是刷剧总在关键时刻转圈——这些糟心体验八成是WiFi信号在作祟。很多人第一反应是升级千兆宽带&#xff0c;却忽略了无线信号从路由器…...

pdf2htmlEX高级调试技术:汇编级调试与反汇编

pdf2htmlEX高级调试技术&#xff1a;汇编级调试与反汇编 【免费下载链接】pdf2htmlEX Convert PDF to HTML without losing text or format. 项目地址: https://gitcode.com/gh_mirrors/pd/pdf2htmlEX pdf2htmlEX是一款能够将PDF文件转换为HTML格式同时保持文本和格式完…...

大模型Transformer架构学习

基础知识&#xff1a; 损失函数&#xff1a;梯度下降单次训练过程过拟合数据增强&#xff1a;增加训练数据&#xff0c;对原始数据加噪&#xff0c;翻转&#xff0c;旋转 正则化&#xff1a;防止该函数过分变化&#xff0c;让损失函数加上该参数&#xff0c;调整损失函数时会抑…...

Linux服务器卡死?5分钟定位hung task与soft lockup的实战技巧

Linux服务器卡死&#xff1f;5分钟定位hung task与soft lockup的实战技巧 凌晨三点&#xff0c;服务器监控突然告警——核心业务节点失去响应。作为运维工程师&#xff0c;这种场景往往意味着不眠之夜。但不同于新手的手足无措&#xff0c;经验丰富的系统管理员知道&#xff1a…...