考虑以下问题,
- 给定一组正数{ 一个1,... ,一个Ñ }其中ķ ≥ 3是一个常数,我们要分区的集成米 大小的子集ķ,使得每个子集的总和的乘积被最大化。
除了我们对每个分区中的数字数量有限制外,该问题与众所周知的数分区非常相似。对于k = 2,可以提出以下简单多项式算法,
- 假定数字进行排序,即, 。然后,对于我≤ 米分配一个我 的子集我,为我> 米,将其分配给所述子集Ñ - 我+ 1。
不难看出该算法为何起作用。只需选择两个任意垃圾箱即可。数字上的任何交换都不会增加产品的数量。
但是对于较大的,我想知道问题是否可以在多项式时间内解决?如果有人能证明它是np硬度,我也将很感激。
注意:我在处理无线网络中的调度问题时遇到了问题。我找到了一种很好的启发式算法来解决该问题。但是过了一会儿,我认为这个问题可能在理论上很有趣。