数组的每个子集中元素的乘积之和

时间:2015-10-12 18:46:43

标签: arrays subset

我需要在多项式时间复杂度中找到数组的每个子集中元素的乘积。

例如,对于数组{1,2,3},所需的总和将等于null+1+2+3+(1*2)+(1*3)+(2*3)+(1*2*3)

我所知道的只是对这个问题的蛮力方法。有人可以解释如何使用O(n^2)O(n^3)时间复杂度中的动态编程解决此问题吗?

1 个答案:

答案 0 :(得分:1)

以下是从O {n}解决此问题的方法:http://www.geeksforgeeks.org/sum-products-possible-subsets/

集合{a,b,c,...,z}的封闭形式为:

(a+1)(b+1)(c+1)...(z+1) - 1