blocked и два целых числа limit и budget. Нужно выбрать набор различных целых чисел так, чтобы:
- каждое число лежало в отрезке от 1 до limit;
- ни одно число не встречалось в blocked;
- сумма выбранных чисел не превышала budget.
Верните, сколько чисел можно выбрать при этих условиях — как можно больше.blocked=[2, 3], limit=8, budget=12 → 3
Можно взять 1, 4 и 5: сумма 10. Добавить следующее разрешённое число 6 уже нельзя — сумма станет 16.
blocked=[9], limit=4, budget=100 → 4
Число 9 и так вне диапазона, а все числа от 1 до 4 в сумме дают 10 — берём все.
blocked=[1, 2], limit=5, budget=2 → 0
Самое маленькое разрешённое число — 3, оно уже больше бюджета.
len(blocked) ≤ 10⁵blocked[i] ≤ 10⁵limit ≤ 10⁵budget ≤ 10⁹blocked=[2, 3], limit=8, budget=12
3
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 104 теста на сервере, включая скрытые.