zoukankan      html  css  js  c++  java
  • NYOJ 461

     

    Fibonacci数列(四)

    时间限制:1000 ms | 内存限制:65535 KB
    难度:4
     
    描述
    数学神童小明终于把0到100000000的Fibonacci数列(f[0]=0,f[1]=1;f[i] = f[i-1]+f[i-2](i>=2))的值全部给背了下来。
    接下来,CodeStar决定要考考他,于是每问他一个数字,他就要把答案说出来,不过有的数字太长了。所以规定超过4位的只要说出前4位(高4位)就可以了,可是CodeStar自己又记不住。于是他决定编写一个程序来测验小明说的是否正确。
     
    输入
    输入若干数字n(0 <= n <= 100000000),每个数字一行。读到文件尾结束。
    输出
    输出f[n]的前4个数字(若不足4个数字,就全部输出)。
    样例输入
    0
    1
    2
    3
    4
    5
    35
    36
    37
    38
    39
    40
    
    样例输出
    0
    1
    1
    2
    3
    5
    9227
    1493
    2415
    3908
    6324
    1023
    
     1 //http://blog.ac521.org/?p=91
     2 #include <stdio.h>
     3 #include <math.h>
     4 int main()
     5 {
     6     int a[21],i,n;
     7     double temp;
     8     for(i=2,a[0]=0,a[1]=1;i<=20;i++)
     9         a[i]=a[i-1]+a[i-2];                                                
    10     while(scanf("%d",&n)!=EOF)
    11     {
    12         if(n<=20)  
    13                printf("%d\n",a[n]);//必须有,否则不够四位时,用下面的会多输出0,即扩大倍数 
    14         else 
    15         {
    16               temp=n*log((1+sqrt(5.0))/2.0)/log(10.0)-0.5*log(5.0)/log(10.0);
    17               temp-=floor(temp);
    18               temp=pow(10.0,temp);
    19               while(temp<1000)
    20                    temp*=10;
    21               printf("%d\n",(int)(temp));
    22           }                         
    23      }
    24     return 0;
    25 }
    26                                                                                                 
    27                 
  • 相关阅读:
    《神经网络论文精读》
    刻意练习
    马斯洛模型
    MRP执行计划列表(禁用)
    生产齐套分析
    BZOJ 3589: 动态树 树链剖分+线段树+树链的并
    CF1043F Make It One 容斥+dp+组合
    CF1073D Berland Fair 二分+线段树
    BZOJ 5084: hashit 后缀自动机(原理题)
    BZOJ 3991: [SDOI2015]寻宝游戏 树链的并+set
  • 原文地址:https://www.cnblogs.com/hxsyl/p/2680008.html
Copyright © 2011-2022 走看看