我在这里停下来是搜索互联网3天试图找到我确定已经存在的东西的结果,但我找不到它。
首先,我不是程序员。我35年前,但不再是。
这是问题所在: 15名男孩和15名女孩坐在男孩/女孩/男孩/女孩6的桌子上有5张桌子 然后让每个人改变为不同的男孩/女孩/男孩/女孩最多4次。
所以我的逻辑是:
有人知道这是否可行?如果是这样可以在Excel中完成? 如果没有,那么独立Windows程序的建议也会起作用。
我正在努力为慈善活动做这件事,青少年男孩和女孩在社交组合中 在结识新朋友的同时。他们来自世界各地,我正试图让他们与每个人见面。
我已经手动做了几年,但似乎永远都不能让它一直都能解决。在我身边的程序员认为必须有针对这个问题的编程解决方案。
我很感激您提供的任何建议。
答案 0 :(得分:0)
在进行更多挖掘后,这似乎是Social Golfer Problem的变体。那里有几个algorithms,有些依赖于蛮力或启发式。它绝对应该在VBA中可行,但您可以在那里找到现有的代码/应用程序来完成任务。
我会继续调查此问题,但如果您找到解决问题的在线“调度程序”,请告诉我们。
修改强>
这可能是6个5个孩子的桌子的一个解决方案,但它不能确保半男孩/女孩的约束。根据这个results page:
对于m个n个玩家组,其中m
对于m组n名球员,每位球员每周与n-1名其他球员一起比赛。由于总共有mn-1个其他玩家,这意味着玩家在(mn-1)/(n-1)周后就会没有合作伙伴。
因此,5组6个孩子会重复。根据第二个公式,一个孩子在5回合后就会没有合作伙伴。
在6组5个高尔夫球手中进行5周
[1 2 3 4 5 | 6 7 8 9 10 | 11 12 13 14 15 | 16 17 18 19 20 | 21 22 23 24 25 | 26 27 28 29 30]
[1 6 11 16 21 | 2 7 12 17 26 | 3 8 13 22 27 | 4 9 18 23 28 | 5 14 19 24 29 | 10 15 20 25 30]
[1 8 12 20 28 | 2 6 14 22 30 | 3 9 11 17 24 | 4 7 16 25 29 | 5 15 18 21 27 | 10 13 19 23 26]
[1 14 17 25 27 | 2 9 13 20 21 | 3 10 12 18 29 | 4 6 15 24 26 | 5 8 16 23 30 | 7 11 19 22 28]
[1 9 15 22 29 | 2 10 16 24 27 | 3 7 14 20 23 | 4 12 19 21 30 | 5 6 13 17 28 | 8 11 18 25 26]