- 所有选定的M个项目将同时运行,即所有M个项目的任务将在同一时刻进行。
- 除非所有M个项目的任务A均已完成,否则不得开始任何选定项目的任务B。
- 除非所有M个项目的任务B均已完成,否则不得开始任何选定项目的任务C。
if say N = 3 and M = 2 (it means we must select M items out of 3 items in total)
Tasks: A B C
item 1 : 1 2 2
item 2 : 3 4 1
item 3 : 3 1 2
如果我们选择项目1和项目3,则在3个单位时间内完成两个项目的任务A(项目1等待项目3完成),然后在接下来的2个单位时间内完成两个项目的任务B。同样,任务C在2个单位时间内完成。因此,总时间为7(这是我们可以找到的最小可能组合)。
我曾尝试过思考动态规划解决方案,但无法得出具体的解决方案。是否有人可以帮助我提供一个有效的问题解决方案。
附言:请不要编写代码。我只是在这里寻找逻辑解答。
提前感谢你的帮助。
[{2,2,2}, {2,2,2}, {3,3,3}, {3,3,3}], M = 2
,它会如何运作?据我所知,Item1-Item2 = 0
,但是Item3-Item4 = 0
,那么我们该如何选择更好的一个,也就是(Item1, Item2)
呢? - גלעד ברקן