Greedy And Dynamic Programming Difference