DP 不知道啥类型,反正不是完全背包类型 以及一般溢出处理 Leetcode 377 组合总数IV

地址

https://leetcode-cn.com/problems/combination-sum-iv/

描述

在这里插入图片描述

思想

本题不能使用完全背包思想解决,因为本题顺序不同的序列被视为不同的组合
而完全背包不考虑顺序。
在这里插入图片描述

代码

class Solution {
    
    
public:
    int combinationSum4(vector<int>& nums, int target) {
    
    
        // 2147483647 + 1 cannot be represented in type 'int'溢出问题
        //将 int 变为unsinged int 即可
        vector<unsigned int> f(target+1);
        f[0]=1;
        for(int i=0;i<=target;i++){
    
    
            for(auto j:nums){
    
    
                if(i>=j){
    
    
                    f[i]+=f[i-j];
                }
            }
        }
        return f[target];
    }
};

猜你喜欢

转载自blog.csdn.net/qq_52934831/article/details/121863374