### Triplets with Sum between given range - The Coding Shala

Home >> Interview Questions >> Triplets with sum between given range

## Triplets with Sum between given range Java Solution

Given an array of real numbers greater than zero in the form of strings.

Find if there exists a triplet (a,b,c) such that 1 < a+b+c < 2 .

Return 1 for true or 0 for false.

Example:
Given [0.6, 0.7, 0.8, 1.2, 0.4] ,
You should return 1
as
0.6+0.7+0.4=1.7
1<1.7<2
Hence, the output is 1.

### Triplets with Sum between given range Java Solution

Here an array will be given, we need to find three values whose sum will be in the given range. We can solve this using brute force using three loops but that will give time limit error.

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43``` ```public class Solution { public int solve(ArrayList A) { if(A.size() < 3) return 0; double a = Double.parseDouble(A.get(0)); double b = Double.parseDouble(A.get(1)); double c = Double.parseDouble(A.get(2)); for(int i = 3; i < A.size(); i++){ if((a+b+c) > 1 && (a+b+c) < 2){ return 1; } double n = Double.parseDouble(A.get(i)); if((a+b+c) >= 2){ if(a > b && a > c){ a = n; } else if( b > c){ b = n; } else{ c = n; } } else{ if(a < b && a < c){ a = n; } else if( b < c){ b = n; } else{ c = n; } } } if((a+b+c) > 1 && (a+b+c) < 2){ return 1; } return 0; } } ```

Other Posts You May Like