Контест Middle Динамическое программирование спрашивают часто обновлено
Рюкзак 0/1: максимальная ценность
Условие
Есть n предметов, у предмета i вес wᵢ и ценность vᵢ. Каждый предмет можно взять не больше одного раза. Выберите набор с суммарным весом не больше W и максимальной суммарной ценностью.
Ввод: в первой строке n и W (1 ≤ n ≤ 100, 0 ≤ W ≤ 5·10⁴), далее n строк w v (1 ≤ w ≤ 5·10⁴, 0 ≤ v ≤ 10⁹).
Вывод: максимальная суммарная ценность (может не поместиться в 32 бита).
Пример 1
Ввод:
4 5
1 1
3 4
4 5
2 3
Вывод:
7
Пример 2
Ввод:
1 0
1 100
Вывод:
0
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.
Предыдущий вопрос
Число путей по клетчатому полю с препятствиями
Следующий вопрос
Наибольшая возрастающая подпоследовательность за n log n