How to count the triangles that can be formed using three different elements of an array in TypeScript

1 Answer

0 votes
function GetNumberOfTriangles(arr : number[]) {
    const size : number = arr.length;
    let count : number = 0;
        
    for (let i : number = 0; i < size; i++) {
        for (let j : number = i + 1; j < size; j++) {
            for (let k : number = j + 1; k < size; k++) {
                // triangle = sum of two sides > value of the third side
                if (arr[i] + arr[j] > arr[k] && 
                    arr[i] + arr[k] > arr[j] && 
                    arr[k] + arr[j] > arr[i]) {
                    console.log(arr[i] + " " + arr[j] + " " + arr[k]);
                    count++;
                }
            }
        }
    }
    return count;
}
        
const arr : number[] = [2, 3, 4, 5, 6, 7];
        
console.log(GetNumberOfTriangles(arr));




/*
run:

"2 3 4"
"2 4 5"
"2 5 6"
"2 6 7"
"3 4 5"
"3 4 6"
"3 5 6"
"3 5 7"
"3 6 7"
"4 5 6"
"4 5 7"
"4 6 7"
"5 6 7"
13

*/

 



answered Sep 12, 2022 by avibootz
...