Это может быть NP-Hard.
Проблема разбиения (для натуральных чисел), кажется, сводится к ней.
Учитывая массив натуральных чисел A [1, ... n], из которых нам нужно найти некоторое подмножество, имеет ту же сумму, что и его дополнение.
Считайте, что ваши цвета от 1 до n. У вас есть две коробки. минимум, который коробка может содержать для цвета i, равен A [i], и у вас есть ровно A [i] элементы цвета i.
Максимальное количество предметов, которое может вместить каждый ящик: (A [1] + .. + A [n]) / 2.