我有两组人——A组和B组。两组人的尺寸都一样,比如说n组。
A组的人需要采访B组的m人,反之亦然,m对于集合A和集合B中的每个人,他们已经与来自另一个集合的M个人进行了预匹配,因此没有任何预匹配是重复的。
如何安排m个时隙
两组的n个人中的每一个人在每个时间段采访另一组的一个预先配对的人
没有人在同一时间段有两次面试
在M轮结束时,每个人都完成了赛前的所有面试
感谢您的帮助!
最佳答案
可以将预匹配表示为一个图,其中两个集的成员表示为节点,匹配表示为无向边。这将是一个二部图,因为没有一个a的成员与a的另一个成员相匹配(B也是如此)。
然后,您想找到这个图的边着色m
颜色。边着色为每条边指定两种颜色,这样共享一个公共节点的两条边就不会具有相同的颜色。如果我们假设颜色代表的是时间段,这就意味着每个人在任何时候都只能进行一次面试。
这个问题有多种算法。查看Wikipedia article以获取一些参考。