Optimized solution to question 20. Factorial method wasn't properly storing computed values in cache.