Answers:
如我所见,您想在图形中找到最大匹配项。实际上,节点是玩家,如果它们不在同一个俱乐部中,则它们会相互连接,现在您应该找到不具有相同顶点的最大边数。请参阅Edmonds最大匹配算法。
在我逐步解决这个问题时,似乎初始匹配算法非常简单:
While two or more clubs have at least one member not paired
select the two clubs with the most unpaired members
select a random unpaired member from each club
pair those members
如果剩下一个人,它将是一个随机的人,只有一个例外。如果一个俱乐部的成员人数超过所有对立球员的总和,那么剩下的将永远来自该俱乐部。实际上,这是一个非常稀有的情况,而从其他任何一家俱乐部买东西都会留下更多的人。