Skip to content

Commit 907bb3e

Browse files
solves #2395: Find Subarrays With Equal Sum in java
1 parent 45187e1 commit 907bb3e

File tree

2 files changed

+21
-1
lines changed

2 files changed

+21
-1
lines changed

Diff for: README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -763,7 +763,7 @@
763763
| 2379 | [Minimum Recolors to Get K Consecutive Black Blocks](https://leetcode.com/problems/minimum-recolors-to-get-k-consecutive-black-blocks) | [![Java](assets/java.png)](src/MinimumRecolorsToGetKConsecutiveBlackBlocks.java) | |
764764
| 2383 | [Minimum Hours of Training to Win a Competition](https://leetcode.com/problems/minimum-hours-of-training-to-win-a-competition) | [![Java](assets/java.png)](src/MinimumHoursOfTrainingToWinACompetition.java) | |
765765
| 2389 | [Longest Subsequence With Limited Sum](https://leetcode.com/problems/longest-subsequence-with-limited-sum) | [![Java](assets/java.png)](src/LongestSubsequenceWithLimitedSum.java) | |
766-
| 2395 | [Find Subarrays With Equal Sum](https://leetcode.com/problems/find-subarrays-with-equal-sum) | | |
766+
| 2395 | [Find Subarrays With Equal Sum](https://leetcode.com/problems/find-subarrays-with-equal-sum) | [![Java](assets/java.png)](src/FindSubarraysWithEqualSum.java) | |
767767
| 2399 | [Check Distances Between Same Letters](https://leetcode.com/problems/check-distances-between-same-letters) | | |
768768
| 2404 | [Most Frequent Even Element](https://leetcode.com/problems/most-frequent-even-element) | | |
769769
| 2409 | [Count Days Spent Together](https://leetcode.com/problems/count-days-spent-together) | | |

Diff for: src/FindSubarraysWithEqualSum.java

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// https://leetcode.com/problems/find-subarrays-with-equal-sum
2+
// T: O(N)
3+
// S: O(N)
4+
5+
import java.util.HashSet;
6+
import java.util.Set;
7+
8+
public class FindSubarraysWithEqualSum {
9+
public boolean findSubarrays(int[] array) {
10+
final Set<Integer> subarraySum = new HashSet<>();
11+
for (int i = 0 ; i < array.length - 1 ; i++) {
12+
int sum = array[i] + array[i + 1];
13+
if (subarraySum.contains(sum)) {
14+
return true;
15+
}
16+
subarraySum.add(sum);
17+
}
18+
return false;
19+
}
20+
}

0 commit comments

Comments
 (0)