leetcode_377 Combination Sum IV

来源:互联网 发布:电子文档软件下载 编辑:程序博客网 时间:2024/06/09 19:46
  • 题目分析

    定一个无重复的正整数数组,计算得到一个目标正整数的所有组合方式的个数。

  • 解题思路

    利用动态规划进行求解,其初始值dp[0] = 1;动态规划转移方程为dp[i] += dp[i - num[j]],其中dp[i]表示生成数字i的所有可能的组合方式的个数。

  • C++实现

int combinationSum4(vector<int>& nums, int target){    vector<int> dp(target + 1, 0);    dp[0] = 1;    for (int i = 1; i <= target; i++)    {        for (int j = 0; j < nums.size(); j++)        {            if (i >= nums[j])                dp[i] += dp[i - nums[j]];        }    }    return dp[target];}
  • 参考文献
    http://www.cnblogs.com/grandyang/p/5705750.html
0 0
原创粉丝点击