// Triangle = the sum of any two values (sides) > than the third value (third side)
// A + B > C
// B + C > A
// C + A > B
function CountTriangles(arr) {
const size = arr.length;
let count = 0;
for (let i = 0; i < size; i++) {
for (let j = i + 1; j < size; j++) {
for (let k = j + 1; k < size; k++) {
if (arr[i] + arr[j] > arr[k] &&
arr[i] + arr[k] > arr[j] &&
arr[k] + arr[j] > arr[i]) {
count++;
console.log(arr[i] + " + " + arr[j] + " > " + arr[k] + " | " +
arr[i] + " + " + arr[k] + " > " + arr[j] + " | " +
arr[k] + " + " + arr[j] + " > " + arr[i]);
}
}
}
}
return count;
}
const arr = [120, 80, 13, 16, 9, 14, 19];
const total_triangles = CountTriangles(arr);
console.log("Total triangles : " + total_triangles);
/*
run:
"13 + 16 > 9 | 13 + 9 > 16 | 9 + 16 > 13"
"13 + 16 > 14 | 13 + 14 > 16 | 14 + 16 > 13"
"13 + 16 > 19 | 13 + 19 > 16 | 19 + 16 > 13"
"13 + 9 > 14 | 13 + 14 > 9 | 14 + 9 > 13"
"13 + 9 > 19 | 13 + 19 > 9 | 19 + 9 > 13"
"13 + 14 > 19 | 13 + 19 > 14 | 19 + 14 > 13"
"16 + 9 > 14 | 16 + 14 > 9 | 14 + 9 > 16"
"16 + 9 > 19 | 16 + 19 > 9 | 19 + 9 > 16"
"16 + 14 > 19 | 16 + 19 > 14 | 19 + 14 > 16"
"9 + 14 > 19 | 9 + 19 > 14 | 19 + 14 > 9"
"Total triangles : 10"
*/