We present new, faster pseudopolynomial time algorithms for the $k$-Subset Sum problem, defined as follows: given a set $Z$ of $n$ positive integers and $k$ targets $t_1, \ldots, t_k$, determine whether there exist $k$ disjoint subsets $Z_1,\dots,Z_k \subseteq Z$, such that $\Sigma(Z_i) = t_i$, for $i = 1, \ldots, k$. Assuming $t = \max \{ t_1, \ldots, t_k \}$ is the maximum among the given targets, a standard dynamic programming approach based on Bellman's algorithm [Bell57] can solve the problem in $O(n t^k)$ time. We build upon recent advances on Subset Sum due to Koiliaris and Xu [Koil19] and Bringmann [Brin17] in order to provide faster algorithms for $k$-Subset Sum. We devise two algorithms: a deterministic one of time complexity $\tilde{O}(n^{k / (k+1)} t^k)$ and a randomised one of $\tilde{O}(n + t^k)$ complexity. We further demonstrate how these algorithms can be used in order to cope with variations of $k$-Subset Sum, namely Subset Sum Ratio, $k$-Subset Sum Ratio and Multiple Subset Sum.
翻译:我们为 $k$-Subset Sum 问题提出了新的、更快的假球时间算法,其定义如下:鉴于设定的美元为正数整数,美元目标为$1,\ldots, t_k美元,确定是否存在美元脱节子集$1,\dots,\k\subseteq Z$,因此美元=t_i=t_i美元,对于 美元=1,\ldots, k美元。假设美元=$max $ t_1, roldots, t_k美元是给定目标的最大目标,基于 Bellman [Bell57] 算法的标准动态编程方法可以解决美元(n tk) 时间问题。 我们利用由于 Koiliariis 和 Xuu [Koil19] 和 Bringmann [Brin17] 的最近进展,以便为 $k-subsetaltical $ $__tal_tal__1krix_qrix_rus_reck sal_rup_rass_x_x_rass_rass_xx_xxxxxxxxx_x_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx