【发布时间】:2012-05-14 10:35:16
【问题描述】:
我正在尝试编写一个双淘汰锦标赛,其中括号基于 mod 4。第一轮应该处理所有轮空,以便在第 2 轮之后不再有轮空。我很难弄清楚确定我需要的轮空数量背后的实际数学。如果有人可以帮助我解决这背后的数学问题,将不胜感激。
对于任何 mod 4 (0,1,2,3) 我需要处理 1,2,3 的再见,有 4 个可能的答案。
我的意思的一个例子是 13 名球员(13%4=1) 所以第一轮括号应该看起来像 1对2 2vs3 3vs4 4对5 5对6
第二轮是 7对胜者 8对胜者 9对胜者 赢家对赢家,然后你有输家的括号
基本上,如果您熟悉网站 Challenge,我想生成与它们相似的括号,但我无法弄清楚它们确定轮空背后的数学原理。
如果有人做过类似的事情,我将非常感谢他的帮助。
【问题讨论】:
-
我认为你走错了路,因为参加锦标赛的人数是 2 的幂,而不是 4 的倍数。
-
你说得对,我的组长就是那个说mod 4的人......我不知道我为什么听他的。
-
after round 2 there will be no more byes无法保证!如果您在锦标赛中的任何时候都有奇数玩家,则需要轮空。
标签: c# algorithm math tournament