Question: Suppose that we are given an array A of n nonnegative integers A[1], A[2], . . ., A[n]. We would like to decide if there

Suppose that we are given an array A of n nonnegative integers A[1], A[2], . . ., A[n]. We would like to decide if there exists subset of the elements of the array A such that the sum of the elements in this subset is exactly S. We would like to construct a dynamic programming algorithm to solve this problem.

As it is typical for dynamic programming algorithms, we introduce a function to characterize the solution. Let us assume that we introduce the function D[i,j] with the following meaning:

D[i,j] will be set to TRUE if and only if there exists a subset of the elements A[i],A[i+1],A[i+2],...,A[n] such that the sum of this subset is exactly j

Here we have, 1 i n + 1 and 0 j S.

Note that the way we define the function D[i,j] is different than the way it was formulated in and it is generally defined. In this question we define D[i, j] considering a subset of A[i], A[i + 1], A[i+2], . . . , A[n] as stated above. Any answer in which D[i, j] does not consider a subset of A[i], A[i+ 1], A[i + 2], . . . , A[n] will not be evaluated and will not get any partial grade.

(a) (5 points) By using this function, we can state the result we would like to find as D[ ... , ... ] (fillinthe blanks with appropriate values).

(b) (15 points) Finally, we also need to define the function by using a recurrence. Please write the recurrence for D[i, j]:

D[i, j] =

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!