Given an infinite number of the following coins: Quarters, Dimes, Nickels and Pennies, and given a value in cents, the algorithm must return all the possible combinations of coins to make up the change. For instance:
n = 12
where [quarter, dime, nickel, penny]
result = [
[0, 0, 0, 12],
[0, 0, 1, 7],
[0, 0, 2, 2],
[0, 1, 0, 2]
]