Advantages of Dynamic Programming