До 268 года до нашей эры в Древнем Риме было шесть основных монет:
Унция (монета номиналом 1 унция)
Секстанс (монета номиналом 2 унции)
Квадранс (монета номиналом 3 унции)
Триенс (монета номиналом 4 унции)
Семис (монета номиналом 6 унций)
Асс (монета номиналом 12 унций)
Однажды римлянин Тиберий взял с собой по две монеты каждого из шести номиналов (всего — 12 монет) и отправился на рынок. Сколькими способами он сможет без сдачи оплатить своими монетами покупку стоимостью 45 унций? Монеты одного номинала считайте одинаковыми.
python
dp = [0] * 46
dp[0] = 1
coins = [1, 2, 3, 4, 6, 12]
for coin in coins:
for j in range(coin, 46):
dp[j] += dp[j - coin]
print(dp[45])
Ответом на задачу будет значение dp[45], которое равно 4 473 способам.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет