DP (overflow) & Divide-and-conquer
recursion tree