【发布时间】:2019-05-06 07:30:56
【问题描述】:
我有 50 个人,这 50 个人分在 5 个团队中(10 个人可能不在一个团队中)。我想从这 50 人中生成 7 组,这样每组中没有两个人在同一个团队中。
- 这些组的人数不必相同。
- 组可以有两个人在同一个团队中,但必须积极地最小化
- 所有组的大小都应大致相同
理想情况下,我想在 python 中解决这个问题,但我并不特别关心我用哪种语言实现它。
【问题讨论】:
-
我没有关注这个。如果您有 7 或 8 人 (50/7) 分布在 5 个团队中,那么您必须在同一团队中有多个人(鸽巢原则)。那么小组是否仅限于 5 人?请发布一个较小的示例来说明问题空间。
-
啊我明白你的意思了,是的,现在我想起来这种情况是不可避免的。我认为我的解决方案需要生成补图:en.wikipedia.org/wiki/Complement_graph
标签: algorithm math language-agnostic