def mc(amount, coinList):
    sol = [0] * (amount+1)
    for i in range(amount+1):
        sol[i] = i
        for coin in coinList:
            if coin <= i:
                tentativeSol = (sol[i - coin] + 1)
                if tentativeSol < sol[i]:
                    sol[i] = tentativeSol
    return sol[amount]

amnt = 63
clist = [1,5,10,21,25]

print(mc(amnt, clist))


611af4bd1d1888811b00b5ae4968afcf83963448
<mask token>

def mc(amount, coinList):
    sol = [0] * (amount + 1)
    for i in range(amount + 1):
        sol[i] = i
        for coin in coinList:
            if coin <= i:
                tentativeSol = sol[i - coin] + 1
                if tentativeSol < sol[i]:
                    sol[i] = tentativeSol
    return sol[amount]


<mask token>

def mc(amount, coinList):
    sol = [0] * (amount + 1)
    for i in range(amount + 1):
        sol[i] = i
        for coin in coinList:
            if coin <= i:
                tentativeSol = sol[i - coin] + 1
                if tentativeSol < sol[i]:
                    sol[i] = tentativeSol
    return sol[amount]


<mask token>
print(mc(amnt, clist))

def mc(amount, coinList):
    sol = [0] * (amount + 1)
    for i in range(amount + 1):
        sol[i] = i
        for coin in coinList:
            if coin <= i:
                tentativeSol = sol[i - coin] + 1
                if tentativeSol < sol[i]:
                    sol[i] = tentativeSol
    return sol[amount]


amnt = 63
clist = [1, 5, 10, 21, 25]
print(mc(amnt, clist))

def mc(amount, coinList):
    sol = [0] * (amount+1)
    for i in range(amount+1):
        sol[i] = i
        for coin in coinList:
            if coin <= i:
                tentativeSol = (sol[i - coin] + 1)
                if tentativeSol < sol[i]:
                    sol[i] = tentativeSol
    return sol[amount]

amnt = 63
clist = [1,5,10,21,25]

print(mc(amnt, clist))

