首页 > 如何理解这个赛程安排软件的算法?

如何理解这个赛程安排软件的算法?

大家都知道循环赛的赛制,就是每个参赛者都交手一次,但是由此产生了一个每一轮对阵安排的问题。为了保持悬念,很多联赛都把实力最强的参赛者的对阵安排在最后一轮。现在有这样的一个赛程规划软件,他是这么规划赛程的。

当只有4个参赛者时,第一轮,1号种子对4号种子,2号种子对3号种子。第二轮,1号种子对3号种子,2号种子对4号种子。第三轮,1号种子对2号种子,3号种子对4号种子。如下图所示:

当有5个参赛者时,第一轮1号种子轮空,第二轮1号种子对5号种子,第三轮1号种子对4号种子,第四轮1号种子对3号种子,第五轮1号种子对2号种子。如下图所示:

当有6个参赛者时,第一轮1号种子对6号种子,第二轮1号种子对5号种子,第三轮1号种子对4号种子,第四轮1号种子对3号种子,第五轮1号种子对2号种子。如下图所示:

当有7个参赛者时,第一轮1号种子轮空,第二轮1号种子对7号种子,第三轮1号种子对6号种子,第四轮1号种子对5号种子,第五轮1号种子对4号种子,第六轮1号种子对3号种子,第七轮1号种子对2号种子。如下图所示:

那么问题来了,我大概明白每一轮1号种子的对阵情况,但是其他比赛的对阵顺序是按照什么逻辑排的呢?依据此规则,如何推导出任意数量参赛者的循环赛的赛程安排?

【热门文章】
【热门文章】