Homework and notes from Recursion and Dynamic Programming half course