[LeetCode416]Partition Equal Subset Sum
来源:互联网 发布:cc域名注册哪里便宜 编辑:程序博客网 时间:2024/05/21 21:54
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.
Subscribe to see which companies asked this question
使用动态规划的方法来解决这个问题,用布尔数组dp[i]表示能否用给定数组中的项求和得到i,能则为true,否则为false,得到状态转移方程为dp[j]=dp[j]||dp[j-nums[i]],代码如下:
class Solution {public: bool canPartition(vector<int>& nums) { int n=nums.size(); int sum=0; for(int i=0;i<n;i++) { sum+=nums[i]; } if(sum%2!=0) return false; bool dp[sum/2+1]={false}; dp[0]=true; for(int i=0;i<n;i++) { for(int j=sum/2;j>=nums[i];j--) { dp[j]=dp[j]||dp[j-nums[i]]; } } return dp[sum/2]; }};
0 0
- [LeetCode416]Partition Equal Subset Sum
- Leetcode416. Partition Equal Subset Sum
- Partition Equal Subset Sum
- Partition Equal Subset Sum
- Partition Equal Subset Sum
- Partition Equal Subset Sum
- Partition Equal Subset Sum
- Partition Equal Subset Sum
- 416. Partition Equal Subset Sum
- 416. Partition Equal Subset Sum
- 416. Partition Equal Subset Sum
- 416. Partition Equal Subset Sum
- 416. Partition Equal Subset Sum
- 416. Partition Equal Subset Sum
- LeetCode: Partition Equal Subset Sum
- [Medium]Partition Equal Subset Sum
- 416. Partition Equal Subset Sum
- LeetCode: Partition Equal Subset Sum
- 第九周 OJ总结<6>-第几天
- 技术学习
- 1、ReactNative详细的Windows系统环境下搭建
- 数据结构(一)顺序表2:顺序表的就地逆置和顺序表中删除元素值
- python 制作小蛇
- [LeetCode416]Partition Equal Subset Sum
- displaytag添加自定义跳转页数功能
- C/C++笔试必须熟悉掌握的头文件系列(七)——cctype/ctype.h
- C++笔记
- AOP源码解析(三)增强器的获取
- c语言学习总结之从关键字到循环结构
- python3报错解决办法:UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 199: illegal multib
- 嵌入式开发为什么选择C语言?
- Binary Tree_build & travserse(二叉树建立,遍历)