在数组中查找具有最小差异和连续元素的2个子集

时间:2018-02-26 23:09:10

标签: c++ algorithm c++11 knapsack-problem subset-sum

我遇到了一个子集求和问题的变体,我觉得很有趣。因此,给定一组(正)元素,您必须将它分成2组,以便它们的差异最小。但这是抓住了。元素必须是连续的,它们也按循环顺序工作。这里有两个例子,所以你可以理解我的意思:

示例1:

INPUT:7 5 1 3 8 9 11 8

输出:0(设置1:{11,8,7},设置2:{5,1,3,8,9}

result picture

示例2:

INPUT:10 14 75 90 3 5 40 4 8

输出:27(第1集:{4,8,10,14,75},第2集:{90,3,5,40})

使用C ++的可能解决方案是什么?谢谢!

0 个答案:

没有答案