zoukankan      html  css  js  c++  java
  • zjut 1176

       zjut 1176 菲波那契数" - 博客后台管理 - 博客园
    http://i.cnblogs.com/EditPosts.aspx?postid=3887297

    #include<fstream>
    #include<iostream>
    #include<cmath>
    using namespace std;
    int main(int argc, char* argv[])
    {
    int a[47]={0,1,1};
    int i,n;
    for ( i=3;i<47;i++)
    a[i]=a[i-1]+a[i-2];
    while (cin>>n)
    {
    cout<<a[n]<<endl;
    }
    return 0;
    }

     哎呀呀,开始用递归写了一个,调试的挺好的。一提交,惨了,time limit exceeded。看来还是不能偷懒。然后就在想,不递归这玩意儿不好弄啊。看了一下指导,明白了,先把第0项到第46项求出来,放在一个数组里,然后直接查就不会超时了。嗯,还是要注意题目的特别性。

    用时:3ms

    #include 
    #define MAX 100

    int n,fib[MAX],i;

    int main() 

       
        fib[0]=0;     fib[1]=1; 
       
             i=2; 
        while(i<47) 
        { 
            fib[i]=fib[i-1]+fib[i-2]; 
            i++;   
        } 
        while(scanf("%d",&n)==1) 
        { 
          printf("%d/n",fib[n]); 
        } 
        return 0; 
    }

  • 相关阅读:
    C# Ini配置文件
    C#日志写入
    GZFramework.DB.Core初始化
    httpHelper
    GZFramework代码生成器插件使用教程
    MVC部署IIS设置
    SignalR记录
    洛谷 P2360 地下城主
    洛谷 P1379 八数码难题(map && 双向bfs)
    洛谷 P1155 双栈排序
  • 原文地址:https://www.cnblogs.com/2014acm/p/3905858.html
Copyright © 2011-2022 走看看