Creative Commons Attribution 3.0 Unported license
Given a multiset S of n positive integers and a target integer t, the Subset Sum problem asks to determine whether there exists a subset of S that sums up to t. The current best deterministic algorithm, by Koiliaris and Xu [SODA'17], runs in O~(sqrt{n}t) time, where O~ hides poly-logarithm factors. Bringmann [SODA'17] later gave a randomized O~(n + t) time algorithm using two-stage color-coding. The O~(n+t) running time is believed to be near-optimal.
In this paper, we present a simple and elegant randomized algorithm for Subset Sum in O~(n + t) time. Our new algorithm actually solves its counting version modulo prime p>t, by manipulating generating functions using FFT.
@InProceedings{jin_et_al:OASIcs.SOSA.2019.17,
author = {Jin, Ce and Wu, Hongxun},
title = {{A Simple Near-Linear Pseudopolynomial Time Randomized Algorithm for Subset Sum}},
booktitle = {2nd Symposium on Simplicity in Algorithms (SOSA 2019)},
pages = {17:1--17:6},
series = {Open Access Series in Informatics (OASIcs)},
ISBN = {978-3-95977-099-6},
ISSN = {2190-6807},
year = {2019},
volume = {69},
editor = {Fineman, Jeremy T. and Mitzenmacher, Michael},
publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.SOSA.2019.17},
URN = {urn:nbn:de:0030-drops-100436},
doi = {10.4230/OASIcs.SOSA.2019.17},
annote = {Keywords: subset sum, formal power series, FFT}
}