문제를 이해하고 있다면 바로 풀이를 보면 됨
전체 코드로 바로 넘어가도 됨
마음대로 번역해서 오역이 있을 수 있음
정수 배열 arr과 세개의 정수 a, b, c가 주어진다. 좋은 세쌍둥이의 개수를 찾아야 한다.
세쌍둥이(arr[i], arr[j], arr[k])가 다음 조건을 만족한다면 good이다.
|x|는 절대값 x를 나타낸다.
좋은 세쌍둥이의 개수를 반환해라.
#1
Input: arr = [3, 0, 1, 1, 9, 7], a = 7, b = 2, c = 3
Output: 4
Explanation: [(3, 0, 1), (3, 0, 1), (3, 1, 1), (0, 1, 1)] 네개의 좋은 세쌍둥이가 있다.
#2
Input: arr = [1, 1, 2, 2, 3], a = 0, b = 0, c = 1
Output: 0
Explanation: 모든 조건을 만족하는 세쌍둥이가 없다.
class Solution {
public int countGoodTriplets(int[] arr, int a, int b, int c) {
int good = 0;
int n = arr.length;
for(int i = 0; i < n; i++){
for(int j = i + 1; j < n; j++){
if(Math.abs(arr[i] - arr[j]) <= a){
for(int k = j + 1; k < n; k++){
if(
Math.abs(arr[j] - arr[k]) <= b &&
Math.abs(arr[i] - arr[k]) <= c
){
good++;
}
}
}
}
}
return good;
}
}