Could someone tell me What is the general idea to approach to problems in Dynamic Programming ?
ie. Given a problem How do I start my thinking :P , Im not getting a clue to deal with DP problems . Making Recursive Equations etc .
Is DP approach is suitable for any problems ?
---------------------------------------------------------------------------------------------------------------------------------------------------
Example Problem
Min-Coin Change is the problem of using the minimum number of coins to make change for a particular amount of cents, $n$, using a given set of denominations $d_{1}\ldots d_{m}$
Given the denominations 1, 5, 10, 20, 25, and wish to make change for 40 cents, the greedy algorithm would give us 25, 10, 5, but the best solution only requires 2 coins - 2 of the 20 cent coins