Question: Consider the following recursive algorithm ( the same as in Question 1 ) : int f ( n ) / * n is an integer

Consider the following recursive algorithm (the same as in Question 1):
int f(n)
/* n is an integer greater than equal to 1*/
{
Let cba be the last three digits of your CWID; /* e.g., my CWID ends with 651; c=6, b=5; a=1*/
if (n==1) return a;
if (n==2) return b;
if (n==3) return c;
int x = f(n-3);
if (x is even) x = x + f(n-2) ;
if (x is odd) x = x + f(n-1) ;
return x ;
};
Develop a dynamic programming algorithm that calculates and returns the same value of f(n) for any given integer n>=1. That is, develop a dynamic programming algorithm equivalent to the recursive algorithm f(n).
Your algorithm must be iterative and not recursive.
Describe your algorithm using C++- like syntax.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!