gpt4 book ai didi

python - 需要帮助根据比赛表创建联赛时间表

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

我有一张包含一组球队的表格,以及他们需要与其他球队进行多少场比赛,如下所示:

example matchup table

在此表中,a、b、c 和 d 队各打两次,与另一组队各打一次,每队总共打十场比赛。我需要根据此表创建每周比赛时间表(例如:第 1 周 - a vs b、c vs d 等),以便所有比赛将在 10 周内进行,每支球队每周进行一场比赛.换句话说,我需要知道每支球队在 10 周内每周与哪支球队比赛,以便每支球队打 10 场比赛。没有家/外地需要考虑。

编辑:需要注意的一点是,每支球队每周都会在同一天比赛,所以基本上是将这些比赛安排在 10 天内,每支球队在这 10 天中每天打一场比赛。

我很难找到一个好的方法来做到这一点,所以如果有人对算法/包有任何建议或者可以指出一些资源(我的首选语言是 python),我将不胜感激。

提前致谢!

最佳答案

一种非常简单的方法是生成组合然后添加 double ,如下所示:

from itertools import combinations

teams = "abcdefgh"

possible_games = combinations(teams, 2)

doubles = {"a":("b", "c", "d"), "b":("c", "d"), "c":("d",), "e":("f", "g", "h"), "f":("g", "h"), "g":("h",)}
all_doubles = {(k, v) for k, values in doubles.iteritems() for v in values}
print all_doubles

games = list(possible_games)
games += [g for g in games if g in all_doubles]
print games, len(games)

这留下了关于实际日程安排的问题 - 你需要确保(我相信)例如 A 队不会连续打 7 天然后闲置一周,但以上应该是一个好的开始我想。

关于python - 需要帮助根据比赛表创建联赛时间表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51940548/

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