Assignments | Course Home | Questionnaire | Schedule & Lecture Notes | Submit

Saint Louis University

Computer Science 314
Algorithms

Michael Goldwasser

Fall 2012

Dept. of Math & Computer Science

Homework Assignment 03

Dynamic Programming


Overview

Topic: Dynamic Programming
Related Reading: Ch. 15
Due: Monday, 24 September 2012, by appointment


This homework will be judged based on an oral presentation of solutions. Please read our guidelines for oral presentation homeworks for an overview of the process.

For this assignment, you may work in pairs.

Please make sure you adhere to the policies on academic integrity in this regard.


Scheduling Presentation Times

Presentations will be made on Monday, 24 September 2012, by appointment . Each group will be given a 30 minute time slot. A signup sheet will be distributed on Wednesday, 19 September 2012, in class .


Probem Solving with Dynamic Programming

The topic for this homework is dynamic programming. As an interesting source of problems in need of algorithmic solutions, we rely on some problems used in past programming competitions such as the ICPC Programming Contest. Although the problem descriptions are written for the contests, you are not to present actual implementations for those problems. Instead, you are to develop and present a high-level formulation of the stated problem and to describe an algorithmic solution (and analysis) using dynamic programming. In presenting your solutions, you should closely follow the following outline:

  1. Describe the space of subproblems, most notably by providing clear notation that identifiers the parameterization of subproblems that will be used, and how the overall goal is reflected in those subproblems. Make sure to justify the optimality substructure condition that is required for dynamic programming.

  2. Give a clear and concise recursive formula that can be used to compute the values of the subproblems (including any relevant base cases).

  3. If using a bottom-up implementation of dynamic programming, in what order would you solve the subproblems?

  4. What is the asymptotic running time and space usage of the overall algorithm, in terms of the relevant problem parameters.

Problems to be Presented (100 points)

  1. (50 points)

    Lawrence of Arabia, from the 2008 Rocky Mountain regionals (local copy)

  2. (50 points)

    Adventures in Moving from a local Canadian qualifier (local copy)


Extra Credit (time permitting)

  1. (10 points)

    RIPOFF, from the 2009 Mid-Central regionals


Michael Goldwasser © 2012
CSCI 314, Fall 2012
Last modified: Thursday, 20 September 2012
Assignments | Course Home | Questionnaire | Schedule & Lecture Notes | Submit