416. Partition Equal Subset Sum
这道题给了我们一个数组,问我们这个数组能不能分成两个非空子集合,使得两个子集合的元素之和相同
https://www.cnblogs.com/grandyang/p/5951422.html
class Solution { public: bool canPartition(vector<int>& nums) { int sum = 0; for(int i = 0;i < nums.size();i++) sum += nums[i]; if(sum%2) return false; int target = sum/2; vector<int> dp(target+1,false); dp[0] = true; for(int num : nums){ for(int i = target;i >= num;i--){ dp[i] = dp[i] || dp[i - num]; } } return dp[target]; } };
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步