Старая и известная проблема Рюкзак требует, чтобы с учетом емкости С и списка из n элементов {I_1, I_2, ..., I_n} с каждым значением I_j = (weight_j, value_j) максимизируйте значение при заполнении рюкзака.Максимизация рюкзака с дополнительными ограничениями
Но что произойдет, если мы добавим ограничение,
1) число раз конкретный элемент выбран должен быть либо 0, либо должно быть нечетным (например: не может принимать только либо не 10lb гири или 1 , 3, 5, .. их число). 2) C = n^2 и n < = weight_j < = n^2 для всех j.
Какая реализация динамического программирования может использоваться для обработки дополнительных ограничений?
Некоторые советы были бы очень благодарны за то, как начать. Благодаря!
Разве это не проблема с DP только с «устранением» некоторых ячеек? – user2246674