У меня есть шесть массивов, каждому из которых дано (не обязательно уникальное) значение от одного до пятидесяти. Мне также дается несколько предметов, которые я могу разделить между ними. Значение каждого элемента определяется массивом, в котором он находится. Массивы могут содержать бесконечные или нулевые элементы, но сумма элементов во всех массивах должна равняться исходному количеству заданных элементов.
Я хочу найти лучшую конфигурацию элементов в массивах, при которой сумма значений элементов в каждом отдельном массиве как можно ближе друг к другу.
Например, предположим, что у меня есть три массива со значением 10 и три массива со значением 20. Для девяти элементов один входит в каждый из массивов «20», а два - в каждый из «10». массивов, так что сумма каждого массива равна 20, а общее количество элементов равно девяти.
Я не могу добавить дробное количество элементов в массив, и числа почти никогда не делятся идеально, как в этом примере, но всегда существует решение, в котором разница между суммами минимальна.
В настоящее время я использую грубую силу для решения этой проблемы, но при большем количестве элементов производительность страдает. Я чувствую, что есть математический ответ на эту проблему, но я даже не знаю, с чего начать.