兔子增长序列(第1届第3题)
2015-12-21 17:08
176 查看
▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
样例输入1:抱来兔子的第N月:1
样例输出1:当期兔子总量(对):1
样例输入2:抱来兔子的第N月:2
样例输出2:当期兔子总量(对):1
样例输入3:抱来兔子的第N月:3
样例输出3:当期兔子总量(对):2
样例输入4:抱来兔子的第N月:5
样例输出4:当期兔子总量(对):5
观察可知,从第三月开始,每个月的兔子总量等于前两个月的兔子总量之和,由此,便很容易确定其可以用斐波那契数列的思路来解决。
▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲
题目要求
问题描述:刚出生的兔子,长到第三个月开始(忽略月份大小)就可以繁殖下一代。假如1月1日抱来一公一母两只兔子,那么3月1日时,就会生出第一代兔子,并且正好也是一公一母。假设兔子没有死亡,每代兔子都可以正常繁殖下一代,那么计算抱来一对兔子第N月时,兔子的总量是多少对。(刚抱来算第一个月)样例输入1:抱来兔子的第N月:1
样例输出1:当期兔子总量(对):1
样例输入2:抱来兔子的第N月:2
样例输出2:当期兔子总量(对):1
样例输入3:抱来兔子的第N月:3
样例输出3:当期兔子总量(对):2
样例输入4:抱来兔子的第N月:5
样例输出4:当期兔子总量(对):5
解决方案
可以先画图找出抱来兔子后每个月的兔子数量规律:观察可知,从第三月开始,每个月的兔子总量等于前两个月的兔子总量之和,由此,便很容易确定其可以用斐波那契数列的思路来解决。
源码示例 & 结果展示
分别展示递归和递推的源码:小结
重视斐波那契数列的应用。▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲
相关文章推荐
- 29.Which two statements are true regarding constraints?
- 链家全解剖:必须佩服、也必须警惕的巨无霸
- Java 泛型类型的一些限制
- 斯坦福机器学习课程 Exercise 习题三
- C/C++面试题大集锦
- Hessian学习笔记之Hessian实例
- 使用maven profile实现多环境可移植构建
- 设计模式六大原则
- oracle 创建唯一索引
- 【Oracle】物理体系结构
- unity5.0材质添加问题
- 数字媒体技术14---wangronggang-VR
- AngularJS 的安全Apply
- java调用linux脚本
- CardView
- 关于多个notification时,其他notification点击无效的解决办法
- CardView
- CardView
- java设计模式----观察者模式
- jQuery插件开发教程