我有一个包含8个元素的数组:
a[8] = {9, 7, 6, 2, 3, 1, 5, 4}
我想将8个元素分成3组。每组是1个或更多元素的总和。每组的总和最相似。
答案 0 :(得分:2)
您正在使用k = 3来描述k-partition problem。
不幸的是,这个问题被认为是(强)NP-Hard,所以没有已知的有效解决方案(并且一般都不存在)。
您最大的希望是强力搜索:将所有分区创建为3组,并从中选择最佳分区。如果你正在处理8个元素 - 这应该是可能的,但恐怕对于较大的数组来说它会很快变得太慢。