关于兔子算法的两种方法

// 有一对幼兔,幼兔1个月后长成小兔,小兔1个月后长成成兔并生下一对幼兔,
//问几年后有多少对兔子,幼兔、小兔、成兔对数分别是多少。
// x            y      z
//1 幼兔 1 小兔 0 成兔 0
//2 幼兔 0 小兔 1 成兔 0
// 3 幼兔 1 小兔 0 成兔 1
// 4 幼 兔 1 小兔 1 成兔 1
// 5 幼兔 2 小兔 1 成兔 2
//6 幼兔 3 小兔 2 成兔 3
// 7 幼兔 5 小兔 3 成兔 5
//
//当前月份幼兔 = 上个月的成兔+上月小兔
//当前月份小兔 = 上月幼兔
//当前月份成兔 = 上月成兔+上月小兔
var
x=0;
y=0;
z=0;
t=0;
n=prompt("输入年份");
for(m=1;m<=n*12;m++){
if(m==1){
x=1;
y=0;
z=0;

}
if (m==2){
x=0;
y=1;
z=0;}
if(m==3){
x=1;
y=0;
z=1;
}
else{
x=y+z;
y=x;
z=y+z;}
t=x+y+z;}
alert(n+‘年后,有幼兔‘+x+‘对,小兔‘+y+‘对,成兔‘+z+"对,总共"+t+‘对‘)

//var a=1;
//b=0
//c=0;
//x=0;
//y=0;
//z=0;
//t=0;
//n=prompt("输入年份");
//for(m=1;m<=n*12;m++){
//x=b+c;
//y=a;
//z=b+c;
//a=x;
//b=y;
//c=z;
//t=x+y+z;}
//alert(n+‘年后,有幼兔‘+x+‘对,小兔‘+y+‘对,成兔‘+z+"对,总共"+t+‘对‘)

时间: 2024-10-10 22:08:34

关于兔子算法的两种方法的相关文章

冒泡算法的两种方法(java描述)

(端午放假今天终于回来了,打起鸡血继续) 之前学c的时候学过一种简单的冒泡算法,比较好理解,今天在书上看到了另一种,有些复杂,看了好一会在弄明白. 以数组num[]={8,3,5,4,2,6}为例: 先说以前学的那种方法: 1 int num[]={8,3,5,4,2,6}; 2 for(int i=0;i<num.length;i++){ 3 for(int j=0;j<num.length-i-1;j++ ){ 4 if(num[j]>num[j+1]){ 5 int temp=nu

15.输入一颗二元查找树,将该树转换为它的镜像, 即在转换后的二元查找树中,左子树的结点都大于右子树的结点, 用递归和循环两种方法完成树的镜像转换

转载请注明出处:http://www.cnblogs.com/wuzetiandaren/p/4260432.html  声明:现大部分文章为寻找问题时在网上相互转载,此博是为自己做个记录记录,方便自己也方便有类似问题的朋友,本文的思想也许有所借鉴,但源码均为本人实现,如有侵权,请发邮件表明文章和原出处地址,我一定在文章中注明.谢谢. 题目:输入一颗二元查找树,将该树转换为它的镜像, 即在转换后的二元查找树中,左子树的结点都大于右子树的结点, 用递归和循环两种方法完成树的镜像转换. 题目分析:

有向无环图(DAG)拓扑排序的两种方法

如下图的DAG: 第一种: (1)从AOV网中选择一个没有前驱的顶点并且输出它: (2)从AOV网中删除该顶点,并且上去所有该顶点为尾的弧: (3)重复上述两步,直到全部顶点都被输出,或者AOV网中不存在没有前驱的顶点. 第二种: 使用深度优先搜索(DFS),并标记每一个节点的第一次访问(pre)和最后一次访问时间(post),最后post的逆序就是DAG的拓扑排序,其实也是节点在进行DFS搜索时,出栈的逆序就是拓扑排序. 拓扑序列的结果有: (1) c++,高等数学,离散数学,数据结构,概率论

PHP汉字转拼音的两种方法+PHP提取汉字(中文)方法

方法一:根据ASCII码转换,GB2312库对多音字也无能为力. GB2312标准共收录6763个汉字,不在范围内的汉字是无法转换,如:中国前总理朱镕基的"镕"字. GB2312中对所收汉字进行了"分区"处理,每区含有94个汉字/符号.这种表示方式也称为区位码.01-09区为特殊符号.16-55区为一级汉字,按拼音排序.(3755个)56-87区为二级汉字,按部首/笔画排序.(3008个)10-15区及88-94区则未有编码.占用的码位是72*94=6768.其中有

冒泡排序算法及其两种优化

冒泡排序算法及其两种优化 1.排序方法 将被排序的记录数组R[1..n]垂直排列,每个记录R[i]看作是重量为R[i].key的气泡.根据轻气泡不能在重气泡之下的原则,从下往上扫描数组R:凡扫描到违反本原则的轻气泡,就使其向上"飘浮".如此反复进行,直到最后任何两个气泡都是轻者在上,重者在下为止. (1)初始    R[1..n]为无序区. (2)第一趟扫描    从无序区底部向上依次比较相邻的两个气泡的重量,若发现轻者在下.重者在上,则交换二者的位置.即依次比较(R[n],R[n-1

线性最小二乘两种方法

线性最小二乘拟合 y = w0 +w1x  (参数 w0, w1) (1)如何评价一条拟合好的直线 y = w0 +w1x 的误差? "cost" of a given line : Residual sum of squares (RSS) (2)最小二乘方法的思路 使 RSS 尽量小. 即 而RSS 函数的图像是这样的: 极小值 处导数为0. 对RSS 求导: 有两种方法求解. 1.closed form: 解析解, 使gradient = 0 得到: w1: slope = ((

Wireshark解密HTTPS流量的两种方法

原理 我们先回顾一下SSL/TLS的整个握手过程: Clienthello:发送客户端的功能和首选项给服务器,在连接建立后,当希望重协商.或者响应服务器的重协商请求时会发送. version:客户端支持的最佳协议版本 Random:共32字节,28字节随机数,4字节额外信息,受客户端时钟影响(为了避免浏览器指纹采集,现在一般会对4字节时钟做扭曲) Session ID:32字节随机数,用于和服务器重建会话,为空表示新建会话 cipher suit:客户端支持的所有密码套件,按优先级排列 Comp

一、查看Linux内核版本命令(两种方法):

一.查看Linux内核版本命令(两种方法): 1.cat /proc/version [[email protected]CentOS home]# cat /proc/versionLinux version 2.6.32-431.el6.x86_64 ([email protected]) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 2.uname -a [

利用颜色和形态学两种方法进行车牌区域提取的OpenCV代码

要想提取车牌号,首先你要定位车牌区域嘛,本文分别两种方法用,即颜色和形态学的方法,对车牌区域进行判定.说得是两种方法,其实两种方法并无多大的区别,只是有一步的判断标准不一样而已,你看了下面整理出的的思路就知道两者的区别真的很小了. 方法一:利用颜色提取车牌区域的思路: ①求得原图像的sobel边缘sobelMat ②在HSV空间内利用车牌颜色阈值对图像进行二值化处理,得到图像bw_blue→ ③由下面的判别标准得到图像bw_blue_edge for (int k = 1; k != heigh