java基础算法之兔子总数
来源:互联网 发布:发工资条软件 编辑:程序博客网 时间:2024/05/18 00:27
package mr.y.arithmetic;
/**
*
* 有一对兔子,从出生后第3个月起每个月都生一对兔子,
* 小兔子长到第三个月后每个月又生一对兔子,假如兔子
* 都不死,问每个月的兔子总数为多少?
*
*
*问题分析:
* 月数: 1 2 3 4 5 6 7 8 …
* 兔子: 1 1 2 3 5 8 13 21…
*
* 规律很明显,n月兔子数 = (n-1)兔子数+(n-2)兔子数 其中 n>2
* 但是我们要理解规律为什么是这样。
*
* 假设 我们要算 第n个月兔子的 总数, 那么应该是这样
* 上个月兔子总数 + 这个月出生的兔子总数
* 上个月兔子总数 应该是 n-1月的兔子数
* 这个月出生的兔子总数应该怎么获得? 根据题目可知道, 这个月能生育的兔子 应该是最少生长了2个月了,
* 所以2个月前出生的兔子到这个月都会生下1对兔子 ,那么两个月前 有多少对 兔子?结果很明显了
*
*/
public class TestRabbit {
public static void main(String[] args) {
System.out.println(getRabbitCount(3));
}public static long getRabbitCount(long n){ if(n<1){ return 0; } if(n<3){ return 1*2; } long sum1 = 1; long sum2 = 1; long sum = 0; for(long i=3; i<n+1; i++){ sum = sum1+sum2; sum2 = sum1; sum1 = sum; } return sum*2;}
}
/**
* 程序结束, 如果有误, 还望大神指导 时间:2017年1月9日17:40:59
*/
0 0
- java基础算法之兔子总数
- Java算法之“兔子问题”
- Java-NowCode-统计出兔子总数
- JAVA基础编程之兔子问题
- 兔子问题----算法基础
- 兔子的总数问题
- 兔子出生总数问题
- 求兔子总数
- java:兔子算法
- java编程题古典算法之兔子问题
- 【华为 OJ 】求兔子总数
- OJ------统计每月兔子总数
- Java算法题:兔子问题
- java算法--兔子繁殖问题
- java算法-兔子对数问题
- Java编程之兔子问题
- [Java] 练习题001:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
- 有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? Java实现
- NDK开发小示例(二)
- ROS学习(十一):ROS URDF->model
- 在码云上用GIT上传自己的代码
- JAVA之模拟注册登录幸运抽奖
- 深入Java集合学习系列:HashMap的实现原理
- java基础算法之兔子总数
- Android中常见的图片处理框架的简单使用
- unity3d引擎的游戏的脚本DUMP及HOOK方案优化
- git的恢复操作
- Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
- 20、Power Query-数据合并、拆分
- 2.2 架构模式在新浪微博的应用[读书敲录]
- 一个介绍hadoop中MapReduce原理的通俗易懂的例子
- js 获取时间段里所有的月份