gpt4 book ai didi

algorithm - 分组方案是什么让每两个人只分组一次?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:07:36 25 4
gpt4 key购买 nike

所以,我们有N个人。

每天,我们将他们分成 N/2 组,即 2 个人在一组中。

我们每天继续分组,直到每两个人恰好配对一次,不多也不少。

请给出每天的分组计划。


这是我的想法:

在 N 个人中,有 N * (N-1)/2 对可能。由于每天我们都会有 N/2 对,所以总共需要 N-1 天。

所以基本上,如果我们的算法将 N 人的列表作为输入,我们将输出 N-1 列表,每个列表将包含一天的配对。


但是如何将这些 N * (N-1)/2 对组织成 N-1 天呢?

我知道如何以暴力的方式做到这一点,就像最坏的情况一样,我们每天尝试每对组合,或者更好地使用哈希集来查看一天的组合是否可能(一天的哈希集).

但我认为一定有更优雅、更高效的方式来解决这个问题。图?

最佳答案

看看http://en.wikipedia.org/wiki/Round-robin_tournament#Scheduling_algorithm - 这似乎回答了你的问题。我还看到在国际象棋比赛和债券结算的背景下对此进行了讨论。

关于algorithm - 分组方案是什么让每两个人只分组一次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20312670/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com