[LeetCode] Partition Equal Subset Sum
2017-06-07 13:28
351 查看
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:
Example 2:
public class Solution {
public boolean canPartition(int[] nums) {
if(nums.length==0) return false;
int sum=0;
for(int i=0;i<nums.length;i++){
sum+=nums[i];
}
if(sum%2==1) return false;
boolean[] dp=new boolean[sum/2+1];
dp[0]=true;
for(int i=0;i<nums.length;i++){
for(int j=dp.length-1;j>0;j--){
if(nums[i]>j) break;;
if(dp[j-nums[i]]) dp[j]=true;
}
}
return dp[sum/2];
}
}
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: true Explanation: The array can be partitioned as [1, 5, 5] and [11].
Example 2:
Input: [1, 2, 3, 5] Output: false Explanation: The array cannot be partitioned into equal sum subsets.
public class Solution {
public boolean canPartition(int[] nums) {
if(nums.length==0) return false;
int sum=0;
for(int i=0;i<nums.length;i++){
sum+=nums[i];
}
if(sum%2==1) return false;
boolean[] dp=new boolean[sum/2+1];
dp[0]=true;
for(int i=0;i<nums.length;i++){
for(int j=dp.length-1;j>0;j--){
if(nums[i]>j) break;;
if(dp[j-nums[i]]) dp[j]=true;
}
}
return dp[sum/2];
}
}
相关文章推荐
- [LeetCode]Partition Equal Subset Sum
- [LeetCode] 416 Partition Equal Subset Sum
- LeetCode: Partition Equal Subset Sum
- [LeetCode]Partition Equal Subset Sum(Java)
- 【Leetcode】416-Partition Equal Subset Sum -- javascript解法 01背包问题
- [LeetCode] Partition Equal Subset Sum划分数组形成两个和相等的子集
- leetcode-416-Partition Equal Subset Sum
- leetcode(416). Partition Equal Subset Sum
- leetcode 416 Partition Equal Subset Sum 对半分
- leetcode 416 c++. Partition Equal Subset Sum
- [LeetCode] Partition Equal Subset Sum
- leetcode解题之416#Partition Equal Subset SumJava版. 对半分(0-1背包,动态规划)
- [Leetcode] #416 Partition Equal Subset Sum
- leetcode--- Partition Equal Subset Sum---动规
- LeetCode No.416 Partition Equal Subset Sum
- LeetCode - 416 - Partition Equal Subset Sum
- [LeetCode416]Partition Equal Subset Sum
- Partition Equal Subset Sum - leetcode 416号题目个人题解
- leetCode No.416 Partition Equal Subset Sum
- [LeetCode] Partition Equal Subset Sum 相同子集和分割