Money change problem

Given a big amount N and the array of denominations S. Assuming infinite supply of each of S = {S1,S2….Sm} denominations, find the number of ways to make change for N cents.

The money change problem can be solved by using Greedy as well as DP. Although Greedy may fail in some cases, but DP works fine for almost all cases