Interval DP (dynamic programming) solves problems where you need to find the optimal way to process a contiguous range. In interval DP, represents the answer for elements from index i to j.
The key difference from other DP: instead of building from smaller indices, you build from shorter ranges to longer ones. A range of length is your base case. Then length , then , and so on. Why ranges? Some problems have this structure: the answer for depends on how you split it into and . You try all split points and pick the best.