문제를 이해하고 있다면 바로 풀이를 보면 됨
전체 코드로 바로 넘어가도 됨
마음대로 번역해서 오역이 있을 수 있음
인덱스가 0부터 시작하는 정수 배열 nums가 주어지고, 합이 같은 길이가 2인 2개의 부분 배열이 존재하는지 찾아라. 두 부분 배열은 서로 다른 인덱스에서 시작해야 한다.
부분 배열이 존재한다면 true, 그렇지 않다면 false를 반환해라.
부분 배열은 배열에서 연속적이고 비어 있지 않은 요소들의 배열이다.
#1
Input: nums = [4, 2, 4]
Output: true
Explanation: 요소 [4, 2]와 [2, 4]인 부분 배열은 합이 6으로 같다.
#2
Input: nums = [1, 2, 3, 4, 5]
Output: false
Explanation: 합이 같고 길이가 2인 2개의 부분 배열이 없다.
#3
Input: nums = [0, 0, 0]
Output: true
class Solution {
public boolean findSubarrays(int[] nums) {
Set<Integer> set = new HashSet<>();
for(int i = 0; i < nums.length - 1; i++){
int sum = nums[i] + nums[i + 1];
if(set.contains(sum)){
return true;
}
set.add(sum);
}
return false;
}
}