Просто вопрос любопытства. Помните, когда в классной группе профессор делил людей на группы определенного числа (n
)?
Некоторые из моих профессоров возьмут список n
людей, с которыми вы хотите работать, и n
людей, с которыми никто не хочет работать, от каждого ученика, а затем магически выделяются группы n
, где учащиеся будут сопоставляться с людьми, которых они предпочитают, и избегать работы с людьми, которых они не предпочитают.
Для меня этот алгоритм очень похож на проблему Knapsack, но я подумал, что я бы спросил, о чем будет ваш подход к этой проблеме.
РЕДАКТИРОВАТЬ: нашел статью ACM, описывающую что-то точно так же, как мой вопрос. Прочтите второй абзац для дежавю.