或许是最容易描述的NP完全问题。一个等价的问题是：给一个整数集合和另一个整数"s"，问是否存在某个非空子集，使得子集中的数字和为"s"。子集合加总问题可以想成是背包问题的一个特例。
动态规划解法.用动态规划的方法，能够以伪多项式时间解决子集合加总问题。我们假定输入序列为：我们需要判断是否存在某个非空子集，使得子集中的数字和为0。我们序列中负数的和为"N"，正数的和为"P"。定义函数"Q"("i", "s")，它的涵义为:子集合加总问题的答案即为"Q"("n", 0)。