给定一组S
与n
个元素和整数k
。我需要找到所有产品的总和n
选择k
双。也就是说,如果S = {1,2,3,4} and k = 2
,那么我正在寻找P = 1*2 + 1*3 + 1*4 + 2*3 + 2*4 +3*4
。请注意,产品对构成了一组 - 从一组n
元素中取出不同的元素。我可以制定这样一个简单的动态规划版本:从一组n个元素中取出k个元素的产品总和
P(n,k) = a_{n}P(n-1,k-1) + P(n-1,k)
也就是说,采取n-1
元素,并选择k-1
,并添加a_{n}
以及离开了a_{n}
。是否有一些很好的理论来找到上述问题的封闭解决方案?虽然编程让我兴奋,但我对高级数学有点欠缺。我能够得出上述DP,但无法进入我希望的封闭形式!
我觉得这是一个有趣的问题,虽然也许更适合数学。正如我所看到的那样,在没有关于集合元素的知识的情况下,封闭的形式本身就是总和。我认为这是定义。如果你正在寻找的是一个更有效的方法来计算总和,我想不出比你自己更好。 –