코린이의 소소한 공부노트

[LeetCode/Easy] 2367. Number of Arithmetic Triplets 본문

코딩테스트 풀이/JAVA

[LeetCode/Easy] 2367. Number of Arithmetic Triplets

무지맘 2023. 5. 2. 14:58

1. Input

1) int[] nums

2) int diff

 

2. Output

1) nums의 요소 중 다음을 만족하는 순서쌍의 개수를 반환

- i < j < k

- nums[j] - nums[i] == diff

- nums[k] - nums[j] == diff

- 중복 순서쌍은 세지 않는다.

 

3. Constraint

1) 3 <= nums.length <= 200

2) 0 <= nums[i] <= 200

3) 1 <= diff <= 50

4) nums는 오름차순으로 정렬되어 있다.

 

4. Example

Input: nums = [0,1,4,6,7,10], diff = 3 -> Output: 2

설명: 순서쌍은 (1,2,4), (2,4,5)2개이다.

 

5. Code

1) 첫 코드(2023/05/02)

class Solution {
    public int arithmeticTriplets(int[] nums, int diff) {
        int answer = 0;
        for(int i=0 ; i<nums.length-2 ; i++)
            for(int j=i+1 ; j<nums.length-1 ; j++)
                if(nums[j]-nums[i]==diff){
                    for(int k=j+1 ; k<nums.length ; k++)
                        if(nums[k]-nums[j]==diff){
                            answer++; break;
                        }
                }
        return answer;
    }
}