Amazon Interview Question

explain dynamic programming, how can you apply it to problems you just solved