【leetcode】416. Partition Equal Subset Sum
来源:互联网 发布:腾讯网络主播欣儿照片 编辑:程序博客网 时间:2024/05/01 16:57
一、题目描述
Given a non-empty array containing only positive integers, find if the array can be partitioned into two subsets such that the sum of elements in both subsets is equal.
Note:
- Each of the array element will not exceed 100.
- The array size will not exceed 200.
Example 1:
Input: [1, 5, 11, 5]Output: trueExplanation: The array can be partitioned as [1, 5, 5] and [11].
Example 2:
Input: [1, 2, 3, 5]Output: falseExplanation: The array cannot be partitioned into equal sum subsets.
思路:用了一个最笨的方法,先算出来数组中所有数的总和sum,如果sum不能被2除断那么很明显无法分成两个和都相同的两组。如果能除断,那么就看数组中是否有和加起来等于sum/2 的组合了,用dp[i] 表示当前数组中加起来和等于i 的数的和。如果dp[sum/2] == sum/2,那么说明有组合加起来等于sum/2。
c++代码(312ms)
class Solution {public: bool canPartition(vector<int>& nums) { int len=nums.size(); int sum=0; for(int i=0; i<len; i++){ sum += nums[i]; } if((sum%2)==1) return false; sum = sum/2; vector<int> dp(sum+1, 0); for(int i=0; i<len; i++){ for(int j=sum; j>=1; j--){ if(j>=nums[i]){ dp[j] = max(dp[j], nums[i]+dp[j-nums[i]]); } } } return dp[sum]==sum; }};
0 0
- Leetcode-416. Partition Equal Subset Sum
- LeetCode—416. Partition Equal Subset Sum
- Leetcode 416. Partition Equal Subset Sum
- 【leetcode】416. Partition Equal Subset Sum
- 【LeetCode】416. Partition Equal Subset Sum
- 【LeetCode】416. Partition Equal Subset Sum
- LeetCode 416. Partition Equal Subset Sum
- 【LeetCode】416. Partition Equal Subset Sum
- Leetcode 416. Partition Equal Subset Sum[medium]
- [LeetCode]416. Partition Equal Subset Sum
- 【LeetCode】 416. Partition Equal Subset Sum
- Leetcode 416. Partition Equal Subset Sum
- Leetcode-416. Partition Equal Subset Sum
- LeetCode 416. Partition Equal Subset Sum
- [leetcode]416. Partition Equal Subset Sum
- LeetCode 416. Partition Equal Subset Sum
- Leetcode Algorithm 416. Partition Equal Subset Sum
- LeetCode 416. Partition Equal Subset Sum
- poj 1990 MooFest(树状数组)
- hdu1789_Doing Homework again
- R语言在线地图神器:Leaflet for R包(五) GeoJson文件的使用
- IAP Cannot connect to iTunes Store
- 编译原理 - 课程设计(简易词法分析器)
- 【leetcode】416. Partition Equal Subset Sum
- px、em和rem
- 07-多种链表作业
- XList , simple your list
- Hadoop中dataNode启动不了
- Java 集合深入理解(10):Deque 双端队列
- 安卓中nullpointexception解决办法
- Java的类与类之间的USES-A和HAS-A及区分
- CentOS安装图形界面