Faster Algorithms for k-Subset Sum and Variations

Abstract

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 t1, …, tk, determine whether there exist k disjoint subsets Z1,…,Zk ⊂eq Z, such that (Zi) = ti, for i = 1, …, k. Assuming t = \ t1, …, tk \ 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 tk) 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 O(nk / (k+1) tk) and a randomised one of O(n + tk) complexity. Additionally, we show how these algorithms can be modified in order to incorporate cardinality constraints enforced on the solution subsets. 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.

0

Turn this paper into a full lesson

ArcXiv compiles a staged curriculum from this paper: 8-12 lessons across beginner → advanced, synthesised section guides, visuals, flashcards, a quiz, exercises, and on-demand deep dives per section. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…