将任务分配给人员的算法,其中某些任务需要多个人员,并且没有人两次执行同 一任务

问题描述 投票:0回答:2

我的一个老师朋友要求我制定一个程序,以帮助他们为学生分配课堂工作。有23个孩子和12种不同的工作类型,其中一些工作需要多个孩子,共有23个可用职位。他们希望每个星期向孩子们随机分配新的工作,在任何可能的情况下,任何孩子都不得重复做一次以上的工作。

我的思考过程是按照此规则生成所有可能的孩子分配给工作,然后一步步地完成结果。但是我很想尝试提出一种实用的算法来生成这些分配组合。

[如果有人对解决方案有任何想法,或者可以让我知道我在追逐不可能的想法,我将不胜感激!我已经粘贴了所有工作以及下面每个工作需要几个孩子的情况,以防有所帮助。

“出勤”:1,“表队长”:4,“老师的助手”:2,“车载橡皮擦”:2“光开关”:1,“图书管理员”:2“午餐助手”:1,“设备管理员”:3,“垃圾邮件监控器”:2,“技术专家”:1,“ Paper Passer”:3,“铅笔刀”:1

我的一个老师朋友要求我制定一个程序,以帮助他们为学生分配课堂工作。有23个孩子和12种不同的工作类型,其中一些工作需要多个孩子,...

algorithm duplicates combinations permutation
2个回答
1
投票

这是一个没有任何保证的简单贪婪算法:


0
投票

此问题可以使用二分匹配来解决。创建如下图:


0
投票

让我们首先找到一些可能的答案的常识性边界:

© www.soinside.com 2019 - 2024. All rights reserved.