No.8 递归快速输出斐波那契数列
规定了范围为1~90; 主要思想是将已经计算过的值存入数组,后面大值计算会简单很多
#include<iostream>
#include<fstream>
using namespace std
;
void Fibo(int n
, long long F
[]) {
if (n
== 1 || n
== 2) {
F
[n
] = 1;
return;
}
if (F
[n
] != 0) {
return;
}
else {
Fibo(n
- 1, F
);
Fibo(n
- 2, F
);
F
[n
] = F
[n
- 1] + F
[n
- 2];
}
}
int main() {
ifstream
infile("input.txt");
int n
;
infile
>> n
;
if (n
<= 0 || n
> 90) {
cout
<< "WRONG" << endl
<< endl
;
}
else {
long long F
[91] = { 0 };
Fibo(n
, F
);
cout
<< F
[n
] << endl
<< endl
;
}
return 0;
}
转载请注明原文地址:https://blackberry.8miu.com/read-7255.html