回 帖 发 新 帖 刷新版面

主题:[讨论]请问时间复杂度?

请问时间复杂度?

斐波那契数列(2)
这是我写的
#include<stdio.h>

int main(void)
{
    double f1,f2;
    double sum;
    int i,n;    
    while(scanf("%d",&n))
    {
        sum=1.0;
        f1=f2=1.0;
        for(i=1;i<n;i++)
        {
            f1=f1+f2;
            f2=f1-f2;
            sum+=f1/f2;
        }
        printf("%.3lf\n",sum);                        
    }
    
    return 0;
}

这个是另一个
#include <iostream>
#include <iterator>
#include <vector>
using namespace std;
int main()
{int n;
while(cin>>n)
{
double i1=1,i2=1;
double resultnum=0;
for(int i=1;i<=n;i++)
{resultnum+=i2/i1;
double temp=i2;
i2+=i1;i1=temp;
}
printf("%.3lf\n",resultnum);
}
    
    return 0;
}
我想问的是为什么我的就会超时呢?
我是个新手,之前只是想把题目做出来,现在想把题目做好,希望解答下!谢谢!

回复列表 (共1个回复)

沙发

以解决!

我来回复

您尚未登录,请登录后再回复。点此登录或注册