#Bus driver needs to give change.
#Given the amount and a list of coin types, how many ways are there?
def change(amount, coins):
if (amount == 0):
return 1
elif (amount < 0 or coins == []):
return 0
else:
return (change(amount, coins[:-1]) + \
change(amount - coins[-1], coins))