Сергей Соколов, в вашем примере лучше пара Б, так как там больше совпадений. Если в примере А будет еще одно совпадение и 1 несовпадение, то приоритет отдается ему, так как по количеству совпадений они равны.
Сергей Соколов, В приоритете максимальное количество совпадений по единицам (по наличию материала). Если одинаковое количество совпадений, то смотрим минимальное количество несовпадений (то есть где у одного массива 0, у второго 1).
wataru, лучшая пара/тройка/четверка... та, у которой больше совпадений по единицам (по наличию материала). Выводить нужно все сочетания в порядке убывания:
У нас есть 10 моделей стульев: 1, 2, ..., 10
После первого прогона алгоритма получилась такая комбинация:
1.2,3,4,5,6,7,8,9,10
2.4,5,6,7,8,1,9,10
...
Это означает, что для 1 стула лучше всего подходит стул 2, то есть у них больше всего совпадения материалов. Следующая по количеству совпадений пара 1 и 3 и так далее. Если количество совпавших единиц одинаковое, то смотрим по количеству несовпадений (чем их меньше, тем лучше). Это только для стула 1.
Для стула 2 идеальная пара 4, потом больше всего подходит 5, потом 6 и т.д.
И вот так для всех 10-ти стульев. Потом необходимо создать то же для троек стульев, четверок и так далее.
Я пока тоже ничего лучше кроме полного перебора не нашел. Точнее даже более-менее понятно, как для пары стульев такое запрограммировать, но как для 3,4-х и так далее - не ясно.
Предположим мы запускаем производство множества разных стульев N. Для каждого стула существует уникальный набор основных материалов, однако всего материалов конечное число M. Чтобы сэкономить на ресурсах мы хотим запускать в производство только те виды стульев, которые лучше всего друг к другу подходят.
В массиве массивов находятся как раз эти сочетания стульев и материалов. Если по вертикали отложить модели стульев, а по горизонтали материалы, то получим матрицу с 0 и 1, где 0 - материал отсутствует, а 1 - материал присутствует (на данном этапе количество используемого материала не играет роли).
Нужно составить множество сочетаний. Сначала подобрать лучшие пары стульев, которые следовало бы производить вместе, если бы мы ограничились номенклатурой в два изделия. Затем все возможные тройки стульев, которые следовало бы производить вместе, если бы мы ограничились номенклатурой в три изделия и так далее.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.