问题:
10个人决定参加比赛,比赛由四人组成,需要一名法官。比赛由十轮组成。在每轮比赛中,2人是评委,4人作为第一组玩游戏,剩下4人作为第二组。每个人必须完全是两次法官,并且他们必须永远不能拥有相同的一对(例如,如果1号人和2号人判断一轮,他们不能一起判断另一轮)。每个人必须完全打8轮,以便他遇到不同对手的最大数量(即每个玩家3次遇到9个对手中的6个,剩下3个玩家2次)。
我尝试了什么:
我认为这个问题类似于8皇后问题,所以我写了一个递归函数,但后来我才意识到,8个皇后问题需要检查8 ^ 8(8个幂的8个)位置找到所有解决方案和我的问题有更多的立场(我数(3 ^ 10)^ 10,也许我犯了一个错误)。无论如何我试图运行我的代码,希望至少得到一个解决方案,但是在运行了大约一个小时之后,它崩溃了而没有给出一个解决方案。 我的代码是用Javascript编写的,如果需要我可以提供。我需要你:
即使只是一个现成的解决方案,没有任何代码也会很棒。理想情况下,我想获得一些如何构建算法的建议。