leetcode 377 Combination Sum IV 详细解答
上来无脑用回溯,像 leetcode 77 。
代码如下:
结果超时。所以只能换个思路。
举例说明:
通过举例我们可以发现,这是个背包问题
包就是4,硬币就是 [1,2,3]
如果要求的 dp[4],
(1)如果将 1 放入背包,那么背包就只有 3 的剩余,即是求 dp[3]
(2)如果将 2 放入背包,那么背包就只有 2 的剩余,即要求的是 dp[2]
(3)如果将 3 放入背包,那么背包就只有 1 的剩余,即要求的是 dp[1]
如果target是7,8也是一样的求法。
最后总结出来的状态转移方程。
具体代码如下:
参考别人的代码改进了一下: