zoukankan      html  css  js  c++  java
  • csu 1087 斐波那契数列

    晕,题目上描述是 N<=20,但是建个20大小的表,提交是WA,用递归提价一下AC了。

    猜测是为了练习,不让大家偷懒。。

    猜测测试数据最大的是21。。

    为了偷懒,建了个25大小的表(注释部分),一提交果然AC,彻底晕倒了,要卡的话应该给个稍大一点的啊。。

    当然如果特别大,时间限制也要改大一点,谅解了。。。

    /* 1087: 斐波那契数列 */
    //用递归法计算第N个斐波那契数,并输出所用到的递归次数
    //斐波那契数列排列如下:1,1,2,3,5,8,……
    # include <stdio.h>

    int fun(int n, int *cnt);

    //const int f[] = {0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,
    // 10946,17711,28657,46368,75025,121393,196418,317811,514229,832040};
    //const int c[] = {0,1,1,3,5,9,15,25,41,67,109,177,287,465,753,1219,1973,3193,5167,8361,13529,
    // 21891,35421,57313,92735,150049,242785,392835,635621,1028457,1664079};

    int main()
    {
    int i;
    int f, cnt;

    // while (~scanf("%d", &i))
    // printf("%d %d\n", f[i], c[i]);

    // for (i = 21; i <= 30; ++i)
    while (~scanf("%d", &i))
    {
    cnt = 0;
    f = fun(i, &cnt),
    printf("%d %d\n", f, cnt);
    }

    return 0;
    }

    int fun(int n, int *cnt)
    {
    if (n==1 || n==2)
    {
    ++(*cnt);
    return 1;
    }
    else
    {
    ++(*cnt);
    return fun(n-1, cnt) + fun(n-2, cnt);
    }
    }



  • 相关阅读:
    DOM解析和SAX解析对比
    SAX解析示例代码和原理
    xPath技术
    dom4j工具对XML写入修改删除操作实现
    Dom4j工具j解析XML原理和示例代码
    Servlet的多线程并发问题
    Servlet的自动加载
    servlet缺省路径
    线程安全问题出现 的根本原因和解决方案
    9.12測试(四)——測试笔
  • 原文地址:https://www.cnblogs.com/JMDWQ/p/2381399.html
Copyright © 2011-2022 走看看