Ctrl K

Больше перекусов на бюджет

Средняя
У автомата с перекусами n батончиков, prices[i] — цена i-го в монетах. У вас budget монет, и вы хотите купить как можно больше батончиков; каждый батончик можно купить не больше одного раза. Верните, сколько батончиков удастся купить. Цены невелики: попробуйте обойтись без обычной сортировки сравнениями — подсчётом.
Пример 1
prices=[5, 2, 9, 3, 2], budget=10 → 3

Берём самое дешёвое: 2 + 2 + 3 = 7. Следующий батончик стоит 5, а осталось 3 монеты — итого 3 покупки.

Пример 2
prices=[12, 15], budget=11 → 0

Даже самый дешёвый батончик дороже бюджета — ответ 0.

Пример 3
prices=[4, 1, 4, 1], budget=10 → 4
Ограничения
  • 1 ≤ n = len(prices) ≤ 10⁵
  • 1 ≤ prices[i] ≤ 10⁵
  • 1 ≤ budget ≤ 10⁸
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПо ладье на линию СредняяСила слабейшего в паре ЛёгкаяСамокаты на зарядку ЛёгкаяСамое большое число из кусков СредняяСтудии для записи Средняя
загружаем Python…
Вход
prices=[5, 2, 9, 3, 2], budget=10
Ожидается
3

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 76 тестов на сервере, включая скрытые.