## Условие Дан массив номиналов монет `coins` и целевая сумма `amount`. Найди минимальное число монет, которыми можно набрать ровно `amount`. Каждый номинал можно брать неограниченно. Если невозможно — верни `-1`. **Формат входа:** - `coins` — массив положительных целых, $1 \leq len(coins) \leq 12$, $1 \leq coins[i] \leq 2^{31} - 1$. - `amount` — целое, $0 \leq amount \leq 10^4$. **Формат выхода:** - Целое число — минимум монет, или `-1`. **Пример 1:** ``` Вход: coins = [1, 2, 5], amount = 11 Выход: 3 ``` Объяснение: 11 = 5 + 5 + 1. **Пример 2:** ``` Вход: coins = [2], amount = 3 Выход: -1 ``` **Пример 3:** ``` Вход: coins = [1], amount = 0 Выход: 0 ``` **Ограничения:** - Time: $O(amount \cdot len(coins))$.

Алгоритмы medium middle

Вопрос с собеседования аналитика по теме «Алгоритмы».

algorithmsdpbfsknapsack

Разбор ответа

Подробный разбор с объяснением «почему правильный ответ верный» и почему остальные неверны — после регистрации.

3000+ вопросов с разбором, карточки с раскрытием ответа, AI-собес и подготовка к интервью аналитика.

Получить доступ к ответам — все вопросы →

Что дальше

Похожие вопросы из категории «Алгоритмы»