Dynamic Programming Patterns Leetcode 75