Description Recurrence relations are where a function is defined in terms of itself and maybe other functions as well. in this problem, we have two functions of interest: F (N) = F (N - 1) + G (N - 1) ; F (1) = 1 G (N) = G (N - 1) + G (N - 3) ; G (1) = 1, G (2) = 0, G (3) = 1 For a given value of N, compute F (N).
Input Each line of input will have exactly one integer, 57 > = N > 0.
Output For each line of input, output F(N).
Sample Input 1 4 57
Sample Output 1 3 2035586497
My Program
#include<iostream> usingnamespace std; int main() ...{ long a[58]=...{0,1,2,2,3,5,7,10,15,22,32,47,69,101,148,217,318,466,683,1001,1467,2150,3151,4618,6768,9919,14537,21305,31224,45761,67066,98290,144051,211117,309407,453458,664575,973982,1427440,2092015,3065997,4493437,6585452,9651449,14144886,20730338,30381787,44526673,65257011,95638798,140165471,205422482,301061280,441226751,646649233,947710513,1388937264,2035586497}; int n; while(cin>>n) cout<<a[n]<<endl; return0; }
附带递归计算程序
#include<iostream> usingnamespace std; long G(int n) ...{ if(n==1) return1; else if(n==2) return0; else if(n==3) return1; else return G(n-1)+G(n-3); } long F(int n) ...{ if(n==1) return1; else return F(n-1)+G(n-1); } int main() ...{ long n; int k; while(cin>>k) ...{ n=F(k); cout<<n<<endl; } return0; }
FJNU.1189DescriptionRecurrence relations are where a function is defined in terms of itself and maybe other functions as well. in this problem, we have two functions of interest: F (N) = F (N - 1) +