提交时间:2024-02-23 12:32:59

运行 ID: 41829

#include<bits/stdc++.h> using namespace std; long int a[80]; long int fib(int n){ if(n==1){ return a[1]; } if(n==2) return a[2]; if(n==3) return a[3]; if(a[n]!=0) return a[n]; a[n]=fib(n-1)+fib(n-2)+fib(n-3); return a[n]; } int main() { a[1]=1; a[2]=2; a[3]=4; int n; while(cin>>n&&n!=0){ cout<<fib(n)<<endl; } return 0; }