看了一下大佬总结的关于背包问题,如醍醐灌顶
作者:Jackie1995
链接:https://leetcode-cn.com/problems/combination-sum-iv/solution/xi-wang-yong-yi-chong-gui-lu-gao-ding-bei-bao-wen-/
常见的背包问题有一下三种:
1、组合问题
状态转移公式:dp[ i ] += dp[ i - num ]
2、真假问题
状态转移方程:dp[ i ] = dp[ i ] or dp[ i - num ]
3、最大最小问题
状态转移方程:dp[ i ] = min(dp[ i ], dp[ i - num ] + 1)或者dp[ i ] = max(dp[ i ], dp[ i - num ]+1)
注意:如果需要考虑组合之间的顺序问题,那么target要放在外循环,不考虑的话target放在内循环