【每日一題-leetcode】416. 分割等和子集
416. 分割等和子集
難度中等421
給定一個只包含正整數的非空陣列。是否可以將這個陣列分割成兩個子集,使得兩個子集的元素和相等。
注意:
- 每個陣列中的元素不會超過 100
- 陣列的大小不會超過 200
示例 1:
輸入: [1, 5, 11, 5] 輸出: true 解釋: 陣列可以分割成 [1, 5, 5] 和 [11].
//先計算總和 如何是奇數說明不可能進行分隔,直接返回false
//dp 1.找到重複子問題 2.dp狀態定義與選擇 3.dp方程
//對於每個數只能選舉一次,所以 只需要進行一次遍歷
//w 是最大值
public boolean canPartition(int[] nums) {
int sum = computeArraySum(nums);
if (sum % 2 != 0) {
return false;
}
int w = sum/2;
boolean [] dp = new boolean[w+1];
dp[0] = true;
for (int num : nums) {
for (int i=w; i>=num ;i--) {
dp[i] = dp[i] || dp[i-num];
}
}
return dp[w];
}
private int computeArraySum(int [] nums) {
int sum = 0;
for (int num :nums) {
sum+=num;
}
return sum;
}
相關文章
- LeetCode刷題日記 416. 分割等和子集LeetCode
- Day 37 | 01揹包問題 、416. 分割等和子集
- 【LeetCode動態規劃#06】分割等和子集(01揹包問題一維寫法實戰)LeetCode動態規劃
- 程式碼隨想錄演算法訓練營第41天 | 01揹包問題 二維 、 01揹包問題 一維 、 416. 分割等和子集演算法
- 程式碼隨想錄day35 || 416 分割等和子集
- leetcode每日一題LeetCode每日一題
- Leetcode每日一題(1)LeetCode每日一題
- LeetCode每日一題: 路徑總和(No.112)LeetCode每日一題
- LeetCode 2024/6 每日一題 合集LeetCode每日一題
- [LeetCode]78. 子集LeetCode
- LeetCode-078-子集LeetCode
- [LeetCode] 416. Partition Equal Subset SumLeetCode
- LeetCode 每日一題「判定字元是否唯一」LeetCode每日一題字元
- LeetCode每日一題: 找不同(No.389)LeetCode每日一題
- LeetCode每日一題: 移除元素(No.27)LeetCode每日一題
- LeetCode每日一題: 移動零(No.283)LeetCode每日一題
- LeetCode每日一題:迴文數(No.9)LeetCode每日一題
- LeetCode每日一題:兩數之和(No.1)LeetCode每日一題
- LeetCode每日一題:自除數(No.728)LeetCode每日一題
- LeetCode每日一題:Nim遊戲(No.292)LeetCode每日一題遊戲
- 75. Sort Colors(Leetcode每日一題-2020.10.07)LeetCode每日一題
- LeetCode每日一題: 排列硬幣(No.441)LeetCode每日一題
- LeetCode每日一題: 各位相加(No.258)LeetCode每日一題
- LeetCode每日一題:求眾數(No.169)LeetCode每日一題
- LeetCode每日一題:爬樓梯(No.70)LeetCode每日一題
- 【LeetCode】每日一題164. 最大間距LeetCode每日一題
- 【LeetCode】416. Partition Equal Subset Sum 解題報告(Python & C++)LeetCodePythonC++
- Leetcode每日一題:面試題16.19.水域大小LeetCode每日一題面試題
- leetcode每日一題刷題記錄(10.26-10.30)LeetCode每日一題
- LeetCode每日一題:整數反轉(No.7)LeetCode每日一題
- LeetCode每日一題:最長公共字首(No.14)LeetCode每日一題
- 【leetcode】(每日一題 771 寶石與石頭)LeetCode每日一題
- LeetCode每日一題 (32)1. 兩數之和LeetCode每日一題
- 18. 4Sum(Leetcode每日一題-2020.10.05)LeetCode每日一題
- LeetCode每日一題: 旋轉陣列(No.189)LeetCode每日一題陣列
- LeetCode每日一題: 猜數字大小(No.374)LeetCode每日一題
- LeetCode每日一題: 搜尋插入位置(No.35)LeetCode每日一題
- LeetCode每日一題: 轉置矩陣(No.867)LeetCode每日一題矩陣