Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 2e94324

Browse files
Add C++ Solution for 416 (#78)
* Create _416.cpp * refactor 416
1 parent bbf9e2d commit 2e94324

File tree

2 files changed

+43
-1
lines changed

2 files changed

+43
-1
lines changed

‎README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -580,7 +580,7 @@ _If you like this project, please leave me a star._ ★
580580
|419|[Battleships in a Board](https://leetcode.com/problems/battleships-in-a-board/)|[Solution](../master/src/main/java/com/fishercoder/solutions/_419.java) | |Medium| DFS
581581
|418|[Sentence Screen Fitting](https://leetcode.com/problems/sentence-screen-fitting/)|[Solution](../master/src/main/java/com/fishercoder/solutions/_418.java) | |Medium|
582582
|417|[Pacific Atlantic Water Flow](https://leetcode.com/problems/pacific-atlantic-water-flow/)|[Solution](../master/src/main/java/com/fishercoder/solutions/_417.java) | |Medium| DFS
583-
|416|[Partition Equal Subset Sum](https://leetcode.com/problems/partition-equal-subset-sum/)|[Solution](../master/src/main/java/com/fishercoder/solutions/_416.java)| |Medium | DP
583+
|416|[Partition Equal Subset Sum](https://leetcode.com/problems/partition-equal-subset-sum/)|[Java](../master/src/main/java/com/fishercoder/solutions/_416.java), [C++](../master/cpp/_416.cpp)| |Medium | DP
584584
|415|[Add Strings](https://leetcode.com/problems/add-strings/)|[Solution](../master/src/main/java/com/fishercoder/solutions/_415.java)| |Easy|
585585
|414|[Third Maximum Number](https://leetcode.com/problems/third-maximum-number/)|[Solution](../master/src/main/java/com/fishercoder/solutions/_414.java)| |Easy|
586586
|413|[Arithmetic Slices](https://leetcode.com/problems/arithmetic-slices/)|[Solution](../master/src/main/java/com/fishercoder/solutions/_413.java) | |Medium| DP

‎cpp/_416.cpp

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
//416. Partition Equal Subset Sum
2+
3+
class Solution {
4+
public:
5+
//maximum size top-down dp table
6+
bool dp[201][20001];
7+
8+
bool equalPart(vector<int>& arr,int size,int sum){
9+
for(int i=0;i<=size;i++){
10+
dp[i][0]=true;
11+
}
12+
for(int i=1;i<=sum;i++){
13+
dp[0][i]=false;
14+
}
15+
16+
for(int i=1;i<=size;i++){
17+
for(int j=1;j<=sum;j++){
18+
19+
if(arr[i-1]<=j){
20+
dp[i][j] = dp[i-1][j] || dp[i-1][j-arr[i-1]];
21+
}else{
22+
dp[i][j] = dp[i-1][j];
23+
}
24+
25+
}
26+
}
27+
28+
return dp[size][sum];
29+
}
30+
31+
bool canPartition(vector<int>& nums) {
32+
int sum=0;
33+
for(int i=0;i<nums.size();i++){
34+
sum+=nums[i];
35+
}
36+
if(sum%2!=0){
37+
return false;
38+
}else{
39+
return equalPart(nums,nums.size(),sum/2);
40+
}
41+
}
42+
};

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /