Группировка чисел по группам
От: Aniskin  
Дата: 29.11.20 21:42
Оценка:
Порекомендуйте, в каком направлении двигаться для решения следующей задачи:

Имеется множество целых чисел от 0 до 63. Имеется N<1000 пар, состоящих из двух чисел из исходного множества. Пара AB равна паре BA, пары могут повторяться, пара может состоять из двух одинаковых чисел. Необходимо распределить те числа из исходного множества, которые присутствуют в парах, на 4 группы не более 16 чисел в группе таким образом, что бы числа из каждой конкретной пары оказались в одной группе. Это не всегда возможно, поэтому приоритет у тех пар, которых чаще повторяются. Для пар AB, CD, EF, GH, AG,... числа из пар AB, GH и AG должны в идеале оказаться в одной группе. Если общее количество чисел, из которых состоят пары, меньше 64, то в группы можно добавлять числа, доводя количество чисел в группе до 16. Т.е. если пару AB не получается разместить в группу, в которой уже есть число A, то если в группе, содержащей число B, есть свободное место, то в нее можно добавить число A. Или можно поместить числа A и B вообще в третью группу. Задача алгоритма сделать так, что бы у максимального количество пар числа из пары входили в одну группу.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.