muxrwc

厕所专栏

王辰ID:muxrwc
15110次访问,排名7157(-1)好友76人,关注者85
codeing,玩,睡,画画(很小的时候)
muxrwc的文章
原创 51 篇
翻译 1 篇
转载 12 篇
评论 25 篇
muxrwc的公告
昂。。。偶文采不好。。。。写文章好累,偶会慢慢更新滴。。。:D
最近评论
dh20156:确实太BT了。IE不严谨吧
s_liangchao1s:学习
cloudgamer:不错
dead_of_winter:对了 你给我看那个寻路 根本就是错的嘛 找不到最优路径的......
muxrwc:@.@数学不好的飘走...
文章分类
收藏
    相册
    WC
    喜欢的图片
    DHTML精英俱乐部-伟大的前辈们。。。
    伟大的aoao前辈。。。
    伟大的EMU前辈。。。
    伟大的FS前辈。。。
    伟大的JK前辈。。。
    伟大的winter同学...(RSS)
    伟大的兔老师。。。。
    伟大的月影大姐姐。。。
    伟大的水水前辈。。。
    伟大的石头君。。。
    伟大的顺子前辈。。。
    伟大的飘飘前辈。。。
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 计算牛的个数收藏

    新一篇: VB提示:文件未找到:'c:\windows\sytem32\ieframe.dll\1'的解决方法

    <script type="text/javascript">
    //一只刚出生的小牛,4年后生一只小牛,以后每年生一只。现有一只刚出生的小牛,问20年后共有牛多少只?
    /*
    牛有4个年龄即1岁到4岁
    到了4岁就会产生一个1岁的牛
    所以,移动牛的年龄从1移动到4。
    然后在给1岁的牛的个数设置成4岁的牛的个数,即可
    */
    var nius = [1, 0, 0, 0];
    var niu = function (year) {
        for (var i = 1 ; i < year ; i ++) {
            nius[3] += nius[2];
            nius[2] = nius[1];
            nius[1] = nius[0];
            nius[0] = nius[3];
            //alert('year : ' + (i + 1) + '\nnius : ' + nius + '\nnum : ' + (nius[0] + nius[1] + nius[2] + nius[3]));
        }
    }
    niu(8);
    alert(nius + '\n' + (nius[0] + nius[1] + nius[2] + nius[3]));
    </script>

    发表于 @ 2008年03月16日 18:25:00|评论(loading...)|编辑

    旧一篇: 排列组合算法

    评论

    #zhaoxiaoyang 发表于2008-03-16 19:36:23  IP: 61.145.139.*
    牛的发育期是四年,但你的算法里好像第四年就开始生育了,不过这是无关紧要的,想法很好.
    提个小建议,你可以初始化数据为:[0, 0, 0, 1];然后从第5年开始循环
    i = 1 ; i < year 使得计算结果少了一年.
    #muxrwc 发表于2008-03-17 10:17:37  IP: 218.247.153.*
    题目里说4年的时候会产一小牛.
    然后此牛,变成大牛...大牛每年都产1只小牛...
    所以.我
    nius[3] += nius[2];
    nius[2] = nius[1];
    直接这样做了..
    这样做,就是大牛每年产一只牛,并且牛4岁了,还会产一只牛..
    如果5年一只小牛的话.
    用一个变量中转下就可以了...:D
    #JK_10000 发表于2008-03-17 11:18:04  IP: 220.181.38.*
    一周岁就开始生,
    数列是:Math.pow(2,n-1),
    即:1,1+1=2,2+2=4,每一项都等于前一项的两倍

    两周岁开始生,
    数列是: -0,1,1,2,3,5,8,13,...
    即:菲波那契数列:1,1,2,3,5,8,13,21……
    这个数列从第三项开始,每一项都等于前两项之和。它的通项公式为:(1/√5)*{[(1+√5)/2]^n - [(1-√5)/2]^n}【√5表示根号5】

    三周岁开始生,
    数列是:-0,-0,1,1,1,2,3,4,6,9,13,每一项都等于前第一项加前第三项
    楼主写的代码是:三周岁开始生小牛

    四周岁开始生,
    数列是:-0,-0,-0,1,1,1,1,2,3,4,6,每一项都等于前一项加前第四项
    #JK_10000 发表于2008-03-17 11:19:28  IP: 220.181.38.*
    sorry,算错了一个,更正一下
    ------------
    四周岁开始生,
    数列是:-0,-0,-0,1,1,1,1,2,3,4,5,每一项都等于前一项加前第四项
    #dh20156 发表于2008-03-17 11:42:58  IP: 218.204.98.*
    不错,学习了!
    #muxrwc 发表于2008-03-17 11:43:56  IP: 218.247.153.*
    菲波那契数列....又学新知识了....:D
    #balilianr 发表于2008-03-18 10:56:15  IP: 60.168.63.*
    收藏一下
    #BlueDestiny 发表于2008-03-18 13:11:06  IP: 220.181.38.*
    偶数学差,菲波那契的通项公式的推导还是给我们伟大的jk前辈和wl前辈来解释,:)
    #dead_of_winter 发表于2008-03-27 13:49:08  IP: 218.7.43.*
    按楼主的代码 递推方程是:
    x[n+3]=x[n+2]+x[n]
    特征方程是
    x^3=x^2+x^0
    x^3=x^2+1
    方程有一个实根和一对共轭虚根 数值计算求出来三个根:x1=1.465571231876768
    x2=-0.23278561593838398+0.7925519925154475i
    x3=-0.23278561593838398-0.7925519925154475i
    然后 令
    x[n]=a*x1^n+b*x2^n+c*x3^n;
    代入前3组x[n]值成一方程组 解出a b c就得到通项公式
    #dead_of_winter 发表于2008-03-27 13:54:28  IP: 218.7.43.*
    不过js不支持复数域的浮点运算 所以乘方运算复杂度还是n 用通项公式反而会慢 呵呵
    #muxrwc 发表于2008-03-27 14:15:51  IP: 218.247.153.*
    @.@数学不好的飘走...
    #dead_of_winter 发表于2008-03-28 01:22:55  IP: 218.7.43.*
    对了 你给我看那个寻路 根本就是错的嘛 找不到最优路径的......
    发表评论  


    当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
    Csdn Blog version 3.1a
    Copyright © muxrwc