锦标赛选手配对算法

时间:2018-09-08 07:15:34

标签: c# algorithm

我正在寻找一种算法,该算法将使双轮巡回锦标赛中的8个玩家配对,以使任何玩家都不能连续两次在同一边玩游戏,也就是说,每个玩家在一个回合中玩 home 下一轮离开,反之亦然。

循环赛的八名选手必须进行七轮比赛,每场比赛有四个固定装置,以便每个选手与其他选手对抗。因此,对于双循环赛,每场比赛将以主场远离,与其他每位玩家进行对抗,导致14轮比赛各有4项比赛。

我使用以下代码生成了未分类的原始灯具集合,这些灯具可以实现均衡的 home-away 分布:

for (int x = 1; x <= 8; x++)
        {
            for (int y = 8; y > x; y--)
            {
                PairThese(x, y);
            }
        }

PairThese()方法创建一个具有x的玩家对战y的固定装置,并创建另一个具有y的玩家对x的住宅的固定装置,以完成双循环。

像前面提到的那样,问题是如何布置固定装置,以使每个玩家始终可以在一个回合中像主场作战,而在下一个回合中则总是走远,反之亦然

0 个答案:

没有答案