兔子数列问题

斐波那契数列,又称黄金分割数列,以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……

为什么f(n)=f(n-1)+f(n-2)?

我们假设兔子在经过两年后,每年都会繁殖一次。那么假设起始时候有一对兔子,这对兔子在经过第一年后并未繁殖,我们这个时候称这对兔子为小兔子,等到第二年的时候,这对兔子我们称为成年兔子,并且繁殖了一对小兔子,一直持续下去… 我们分析可以得到,第n月的小兔子数是第n-1月成年兔的数量,第n月的成年兔子数是第n-1月成年兔子数+小兔子数。所以,设f(n)为第n月兔子数量,则:
f(n)=n月小兔子数+n月成年兔子数
n月小兔子数=n-1月成年兔子数
n月成年兔子数=n-1月小兔子数+n-1月成年兔子数
n-1月成年兔子数=n-2月小兔子数+n-2月成年兔子数=f(n-2)
将上式合并就可以得到f(n)=f(n-1)+f(n-2)

问题

#include <iostream>
using namespace std;
int main() {int n, m=0, p = 1, q = 1;cin >> n;if (n == 1 || n == 2)cout << 1 << endl;else {for (int i = 3; i <= n; i++) {m = p + q;p = q;q = m;}cout << m << endl;}return 0;
}

ZZULIOJ 1055 兔子繁殖问题(C++)相关推荐

  1. zzulioj.1055 兔子繁殖问题

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

  2. ZZULIOJ 1055:兔子繁殖问题

    兔子繁殖问题 题目描述 这是一个有趣的古典数学问题,著名意大利数学家Fibonacci曾提出一个问题:有一对小兔子,从出生后第3个月起每个月都生一对兔子.小兔子长到第3个月后每个月又生一对兔子.按此规 ...

  3. ZZULIOJ 1055兔子繁殖问题

    题目描述 这是一个有趣的古典数学问题,著名意大利数学家Fibonacci曾提出一个问题:有一对小兔子,从出生后第3个月起每个月都生一对兔子.小兔子长到第3个月后每个月又生一对兔子.按此规律,假设没有兔 ...

  4. zzulioj 1055: 兔子繁殖问题

    题目描述 这是一个有趣的古典数学问题,著名意大利数学家Fibonacci曾提出一个问题:有一对小兔子,从出生后第3个月起每个月都生一对兔子.小兔子长到第3个月后每个月又生一对兔子.按此规律,假设没有兔 ...

  5. 【ZZULIOJ】1055: 兔子繁殖问题

    ZZULIOJ题解 1055: 兔子繁殖问题 题目描述 这是一个有趣的古典数学问题,著名意大利数学家Fibonacci曾提出一个问题:有一对小兔子,从出生后第3个月起每个月都生一对兔子.小兔子长到第3 ...

  6. 1055: 兔子繁殖问题 ZZULIOJ

    1055: 兔子繁殖问题 题目描述 这是一个有趣的古典数学问题,著名意大利数学家Fibonacci曾提出一个问题:有一对小兔子,从出生后第3个月起每个月都生一对兔子.小兔子长到第3个月后每个月又生一对 ...

  7. 醉林疯的OJ 1055: 兔子繁殖问题

    1055: 兔子繁殖问题 题目描述 这是一个有趣的古典数学问题,著名意大利数学家Fibonacci曾提出一个问题:有一对小兔子,从出生后第3个月起每个月都生一对兔子.小兔子长到第3个月后每个月又生一对 ...

  8. 1055: 兔子繁殖问题 Python

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

  9. 1055: 兔子繁殖问题 C语言

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

最新文章

  1. DM368启动串口打印分析
  2. 图片加载利器Picasso 解析
  3. r语言和python-Python和R语言的区别_Python与R的区别和联系
  4. 活动目录从入门到精通
  5. 线程间操作无效: 从不是创建控件“Control Name'”的线程访问它问题的解决方案及原理分析...
  6. 动态ram依靠什么存储信息_处理器内存系统1(ROM,RAM,数据存储顺序)
  7. vue怎么使用php调取数据,vue 数据操作
  8. 和平精英android怎么写符号,和平精英名字符号大全 可用的名字特殊符号有哪些...
  9. 二层交换机 不在同一子网_从二层交换机来说为什么三层交换机比路由器转发速率快...
  10. 【博客大赛】100行js代码实现网站在线用户数量统计 nodejs + socket.io方案
  11. Linux调试登陆Visual Studio
  12. VI.Multidocument Transactions
  13. Android.light.apk,Android_Lightblue.apk
  14. c语言2种软件下载,C语言代码自动整理工具
  15. 初中计算机会考知识点大全,初中信息技术会考知识点复习提纲
  16. 【JS】WPS宏编辑器
  17. Oracle VM VirtualBox 打开Ubuntu出现0x00000000指令引用的0x00000000内存,该内存不能为written的解决方案
  18. 通风设备在中学化学实验室建设中的应用
  19. 【Leetcode】[190] 颠倒二进制位
  20. 登陆档案信息未找到服务器是怎么办,用友畅捷通T+软件POS端常见问题汇总

热门文章

  1. 名编辑电子杂志大师教程 | 导入、导出主题模板设置
  2. 2021年电工(初级)考试题及电工(初级)新版试题
  3. 用递归实现十进制转换为二进制
  4. 我们用C语言开发出的YFS(分布式文件系统)
  5. 合同到期自动发出提醒如何设置
  6. android 蓝牙传输图片吗,如何使用蓝牙将Android手机中的照片和视频副本发送到树莓派...
  7. 前端js入门知识——JavaScript 注释
  8. SSM+ajax使用百度AI人脸识别(人脸对比)功能心得
  9. ElasticSearch 安装教程
  10. VS 2019 VC++项目出现 LNK1104 无法打开文件“libcmtd.lib“ 的解决方法