先贴代码
#include<bits/stdc++.h>
using namespace std;
int b[50];
int fib(int a){
if(b[a]!=0) return b[a];
else if(a==0)
return b[a]=0;
else if(a==1)
return b[a]=1;
else return b[a]=fib(a-1)+fib(a-2);
}
int main(){
int n;
cin>>n;
cout<<fib(n)<<".00";
return 0;
}
第五个点WA,输入48,输出4807526976.00,也没错啊?