版权声明:原创勿转 https://cloud.tencent.com/developer/article/1412965
dp算法
dp[i-numsj]即以i-numsj作为target的时候所需要的组合数
func combinationSum4(nums []int, target int) int {
dp := make([]int, len(nums)+1)
dp[0] = 1
for i := 1; i <= target; i++ {
for _, v := range nums {
if v <= i {
dp[i] += dp[i-v]
}
}
}
return dp[target]
}