每周组分配算法

mih*_*jlv 8 algorithm combinatorics

我的一位朋友是一名教师,班上有23名学生.他们想要一种算法,在14周内为学生分成2组和3组(处理奇数学生),这样在14周内没有两对重复(一对被分配到一周).

蛮力方法效率太低,所以我在想其他方法,矩阵表示听起来很吸引人,图论.有没有人有任何想法?我能找到的问题只涉及1周,这个答案我可以搞清楚.

小智 9

循环算法将完成我认为的技巧.

将剩余的学生添加到第二组,您就完成了.

First run
1   2   3   4   5   6   7   8   9   10  11  12
23  22  21  20  19  18  17  16  15  14  13

Second run
1   23  2   3   4   5   6   7   8   9   10  11  
22  21  20  19  18  17  16  15  14  13  12
Run Code Online (Sandbox Code Playgroud)

...