The document contains the solutions to several algorithm questions. It begins by discussing a recursive Fibonacci number program, calculating that it performs Gn = Fn - 1 additions for the nth term. It then provides two more efficient algorithms using dynamic programming with an array or matrix exponentiation with O(log n) time. Subsequent questions discuss quicksort's O(log n) space complexity, deriving a closed formula for a divide-and-conquer recurrence, and proving properties about the minimum of |x-xi| and maximum product partition of a number.