Pergunta de entrevista da empresa Google

A difficult question (LeetCode Hard) that involved dynamic programming with memoization.