给定一个整数数组,将数组划分为k个子数组,以使最大和和最小和子数组之间的差异最小化

时间:2015-11-08 08:53:40

标签: algorithm

例如,让我们考虑将以下数组分为5个子数组:

[0,1,2,1,3,1,5,6]

除此之外的最佳方法是[0,1,2],[1,3],[1],[5],[6],因为最大和子阵列的总和为6,最小和子阵列的总和为1 ,5是你可以获得的最佳结果。

我能想到的算法迭代所有可能的方法将数组划分为k个部分并选择其中最好的部分。这显然是指数级的。有多项式时间算法吗?

0 个答案:

没有答案