zoukankan      html  css  js  c++  java
  • [每日一题]leetcode 377. 组合总和 Ⅳ

    就一个dp,别想歪了

    dp[i]表示组成数字i的种数

    但这题是真坑。。结果保证int内,不代表中间数字在int内

    class Solution {
    public:
        long long dp[10010];
        int combinationSum4(vector<int>& nums, int target) {
            memset(dp, 0, sizeof(dp));
            sort(nums.begin(), nums.end());
            for(int i = 0; i < nums.size(); i++)
                dp[nums[i]] = 1;
           // cout << 11111 << endl;
         //  dp[0] = 1;
            for(int i = 0; i <= target; i++)
            {
                for(int j = 0; j < nums.size() && nums[j] <= i; j++)
                {
                    if(dp[i - nums[j]] > INT_MAX) continue;
                    dp[i] += dp[i - nums[j]];
                }
                                
    
            }
            return dp[target];
        }
    };
    自己选择的路,跪着也要走完。朋友们,虽然这个世界日益浮躁起来,只要能够为了当时纯粹的梦想和感动坚持努力下去,不管其它人怎么样,我们也能够保持自己的本色走下去。
  • 相关阅读:
    新生题目集
    C语言课程设计
    Java学习-8
    Java学习-7
    Java学习-6
    Java学习-5
    HTML学习
    Java学习-4
    强大的项目管理工具maven
    java学习-3
  • 原文地址:https://www.cnblogs.com/WTSRUVF/p/14697337.html
Copyright © 2011-2022 走看看