← К задачам
Можно ли разменять сумму монетами
Дан список номиналов монет coins (каждого номинала можно брать сколько угодно) и целое неотрицательное число amount.
Реализуйте функцию can_make_sum(coins, amount), которая возвращает True, если из этих монет можно набрать ровно сумму amount, и False иначе. Сумму 0 всегда можно набрать (не взяв ни одной монеты). Решение — динамика по достижимым суммам за O(amount * len(coins)).
Формат входа: coins — список положительных номиналов (возможно пустой), amount — целевая сумма.
Формат выхода: True или False.
Примеры:
can_make_sum([1, 2, 5], 11) -> True
can_make_sum([3, 7], 5) -> False
can_make_sum([], 0) -> True
def can_make_sum(coins, amount):
# ваш код
pass
Для запуска тестов необходима авторизация.