剪枝的递归调用
#include <bits/stdc++.h>
using namespace std;
long long a[1000] = {0, 1, 1};
//在符合(n<92)的情况下,就可以随意求值,大了就超long long了
long long feibo(int n){// 本来特判应该是a[n]!=0,但此题有点不同。。。
if(n==0||a[n]!=0) return a[n];
return a[n] = feibo(n-1)+feibo(n-2);
}
int main()
{
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
int n;cin >> n;
for(int i=0;i<n;i++) cout << feibo(i) << " ";
// cout << feibo(66);
return 0;
}