#### Intro

In the previous post I have described the fourth week of "Data Structures and Algorithms" course on Coursera. In this post I am going to cover the fifth week of that course.

#### What's has been covered

Authors covered dynamic programming and its verious applications. Following problems were discussed during lectures:

- Money change
- Edit distance
- Knapsack with/without repetitions
- Maximum value of arithmetic expression

Programming assignment consists of the following problems:

- Primitive Calculator - given a positive integer n, find the minimum number of operations needed to obtain the number n starting from the number 1.
- Take as Much Gold as Possible - implement knapsack without repetitions.
- Compute the Edit Distance Between Two Strings - nuff said.
- Maximize the Value of an Arithmetic Expression - add parentheses to a given arithmetic expression to maximize its value.

#### Summary

In this post I have covered the fifth week of "Data Structures and Algorithms" course on Coursera. It was the last week of "Algorithmic Toolbox" course. I finished the course with 96.4% grade.