题目描述
使用非递归实现,递归会TLE
样例
blablabla
C++ 代码
#include <bits/stdc++.h>
#include <algorithm>
using namespace std;
int febo(int n)
{
int a = 0;
int b = 1;
int c;
if(n == 1) c = a;
if(n == 2) c = b;
while (n > 2)
{
c = a + b;//从第三个数开始,斐波那契数等于前两个数的和;
a = b;//将前一个数给到a,开始下一次求值
b = c;//将斐波那契数给b,开始下一次求值
n--;//每求一次,n都要减一
}
return c;
}
int main()
{
int n, res = 0;
cin>>n;
for(int i= 1; i <= n; i++){
cout<<febo(i) << " ";
}
return 0;
}