Max Subarray Dynamic Programming Problems