Count Good Triplets - Array - Easy - LeetCode
💻 coding

Count Good Triplets - Array - Easy - LeetCode

1 min read 189 words
1 min read
ShareWhatsAppPost on X
  • 1A good triplet is defined by specific conditions involving the absolute differences between its elements.
  • 2The algorithm iterates through the array using three nested loops to count valid triplets.
  • 3The solution has a time complexity of O(n^3) and a space complexity of O(1).

AI-generated summary · May not capture all nuances

Key Insight
AskGif

"A good triplet is defined by specific conditions involving the absolute differences between its elements."

Count Good Triplets - Array - Easy - LeetCode

Given an array of integers arr, and three integers a, b and c. You need to find the number of good triplets.

A triplet (arr[i], arr[j], arr[k]) is good if the following conditions are true:

0 <= i < j < k < arr.length |arr[i] - arr[j]| <= a |arr[j] - arr[k]| <= b |arr[i] - arr[k]| <= c Where |x| denotes the absolute value of x.

Return the number of good triplets.

Example 1:

Input: arr = [3,0,1,1,9,7], a = 7, b = 2, c = 3 Output: 4 Explanation: There are 4 good triplets: [(3,0,1), (3,0,1), (3,1,1), (0,1,1)]. Example 2:

Input: arr = [1,1,2,2,3], a = 0, b = 0, c = 1 Output: 0 Explanation: No triplet satisfies all conditions.

Constraints:

3 <= arr.length <= 100 0 <= arr[i] <= 1000 0 <= a, b, c <= 1000

public class Solution {
 public int CountGoodTriplets(int[] arr, int a, int b, int c) {
 int count = 0;
 for(int i=0;i<arr.Length;i++){
 for(int j=i+1;j<arr.Length;j++){
 if(Math.Abs(arr[i]-arr[j])>a){
 continue;
 }
 for(int k=j+1;k<arr.Length;k++){
 if( 
 (Math.Abs(arr[j]-arr[k])<=b)&&
 (Math.Abs(arr[i]-arr[k])<=c)
 )
 {
 count++;
 }
 }
 }
 }
 
 return count;
 }
}

Time Complexity: O(n^3)

Space Complexity: O(1)

Enjoyed this article?

Share it with someone who'd find it useful.

ShareWhatsAppPost on X

sumitc91

Published on 27 September 2020 · 1 min read · 189 words

Part of AskGif Blog · coding

You might also like

Count Good Triplets - Array - Easy - LeetCode | AskGif Blog