Dynamic Programming Nicholas Wong - 10 Jul 2018 Come up with a recursive functionMemorize the intermediate resultsMake it bottom up