CSCI 2300 Lab 9 Fall 2014, 4/22/15

This lab is about Dynamic Programming, a search problem, NP-complete Problems and Reductions
  1. Solve and Implement in C++ the Subset Sum Problem (using Dynamic Programming) Exercise 6.22 of DG - Also output the subset elements which add up to the the given number (you can just give the indices of the set). Use the data here - number of elements in the set, the set itself, and a positive integer t (some Subset A add up to t) - You can abstract Set as an array/vector.
  2. There are a number of interesting problems (on Dynamic Programming) given in here . Please implement Problem 7 using the code that you did to solve problem 1 of this exercise. (You are also welcome to take a fresh approach following the ideas in the slides/talk). Please use the data here - Output one partition (the index is sufficient) and their sum.
  3. 8.2 (DG) (Hint: If the decision procedure says no to the entire graph then there is not Rudrata path. If it says yes, then we have to find a path. Delete an edge from the Graph. If the decision procedure says yes, do not include the edge, if it says no, note the edge will be in the path. Include it in the path. Do this for all edges. In the end, you will have the edges for Rudrata path - Why?)
  4. (Optional - But recommended) Please watch this youtube video Talk by Prof. Mike Sipser in the Clay Institute . Please listen to this audio from 4:00 minute mark Manindra Agarwal (IIT Kanpur) on 2010 July P vs NP attempt (audio)