我的目标是创建4个会话。每节课有20分钟的时间。我需要把50个学生分成小组。每组最多有3名成员。并在80分钟内创建四次。这样每次每个学生都会与不同的学生分组分配。没有人会再对峙了。
解决这个问题所需的组要多得多,所以有很多简单的方法。
单向:
- 把你的学生分成两组或三组
- 在每组中,分配数字:一个学生将是数字1,一个是数字2,如果有第三个,一个将是数字3
- 把小组排成一个圆圈。在每个会话结束时,数字1保持不变,数字2顺时针移动一组,数字3顺时针移动两组
很容易证明这满足您的条件。每个学生:
- 与他分组的每个学生都会有一个不同的数字——每个小组总是有一个1,一个2,也许还有一个3
- 一旦他与另一名学生分组,该学生将在每节课结束时再移动1到2组
- 共有17个小组,因此每节课走1或2步,学生需要17节课才能再次见到他的任何一个小组成员
这种策略在很多情况下都很有效。如果你有一个素数的小组,每个小组的小组比学生多,小组比课程多,那么没有两个学生会见面两次。