2009-09-09 68 views
0

我有很多的羽毛球运动员作为输入,还有一个数以1天时隙,需要在组织播放时间表,让最终所有玩家都玩过多款游戏,并且我们有最后的赢家。算法将人变成1对1或2对2队

+1

但是规则是什么?球员是否在一些组中分裂(并在内部互相玩)? – 2009-09-09 12:30:03

+1

听起来这只是一个简单的循环赛,不难编码;但是,应该使用什么样的评分规则?赢家是赢得最多的赢家,还是你使用了一个考虑到实力的积分系统? – rjzii 2009-09-09 12:32:21

+1

和您选择的语言是?你输入的形式是? – 2009-09-09 16:00:10

回答

2

有多种算法,可能是使用了把玩家进入游戏插槽,给出了各种限制(减少游戏的每个玩家扮演,减少时隙数量,最大限度地提高游戏的每个玩家扮演等)。

,你可能想看看,为您的特定约束条件的一些例子:

在这两种情况下,如果要确定谁应该在哪去了组还是应该在什么梯子排名,你应该(约由他们知道如何好,是对他们进行排名)种子你的球员,并尝试以确保游戏在后面的比赛将涉及最高种子的冲突。

例如,看看产生它们的世界杯赛的比赛日程中使用国际组织FIFA混合式系统:

  1. 首先,他们为了根据他们的排名球队

  2. 他们创建了n组,其中m各自组队,并且在每组中放置球队以确保东西均匀分布。在他们的情况下,它是排名和出处/位置的组合。例如,如果您有ABCDEFGHIJKL的球队,从最好到最差排名,并且您有三个四人组,您可以这样做:(为了简单起见,忽略尝试按原籍/地点分散团队)

    GROUP 1:AFGL

    GROUP 2:BEHK

    GROUP 3:CDIJ

  3. 每队一组中扮演着每一个其他球队。例如,在第1组中,A队将打F队,G队和L队.F队将与A,G,L队一起打A队,F队,L队等。

  4. 最后,每组中最好的(或最好的两个)球队面临Single Elimination Tournament或“淘汰赛”比赛。安排的方式是尽可能在比赛后期尽可能让同组中的球队互相比赛。

该系统确保每个团队/玩家保证至少玩几场比赛,并可在第一次失败后“回来”。它还可以确保玩许多游戏。

或者,在“纯循环赛”锦标赛中,您甚至可能不会使用单场淘汰赛,并且让每个人都参加一场巨型循环赛,并且让这个大组中的最佳成为胜者。

+0

明天会对此表示赞赏。 – 2010-06-30 06:16:16