Algorithm 当给定分区元素时,使用k个部分计算整数分区
我想用Algorithm 当给定分区元素时,使用k个部分计算整数分区,algorithm,math,dynamic-programming,subset-sum,integer-partition,Algorithm,Math,Dynamic Programming,Subset Sum,Integer Partition,我想用k分区元素计算n的整数分区。可能的分区元素通过给定的向量v定义,该向量具有不同的元素。分区元素可以选择多次。我该怎么做?优化,无需遍历n的所有整数分区 例如: n:=10 k:=3 v:=1,2,6,7,8 =3 < /代码> < P>一种方法是递归地考虑每个元素的顺序。 非动画JavaScript: 函数f(n,k,v,i=0){ 如果(k==0) 返回n==0; 如果(i==v.length) 返回false; 设总数=0 而(k>=0&&n>=0){ 总计=总计+f(n,k,v
k
分区元素计算n
的整数分区。可能的分区元素通过给定的向量v
定义,该向量具有不同的元素。分区元素可以选择多次。我该怎么做?优化,无需遍历n
的所有整数分区
例如:
n:=10
k:=3
v:=1,2,6,7,8
<代码>=3 < /代码>
< P>一种方法是递归地考虑每个元素的顺序。 非动画JavaScript: 函数f(n,k,v,i=0){ 如果(k==0) 返回n==0; 如果(i==v.length) 返回false; 设总数=0 而(k>=0&&n>=0){ 总计=总计+f(n,k,v,i+1); k=k-1; n=n-v[i]; } 返回总数; } log(f(10,3[1,2,6,7,8])代码>