function PrintCommonElementsInThreeArrays(arr1 : number[], arr2 : number[], arr3 : number[]) {
const size1 : number = arr1.length;
const size2 : number = arr2.length;
const size3 : number = arr3.length;
let i : number = 0;
let j : number = 0;
let k : number = 0;
while (i < size1 && j < size2 && k < size3) {
if (arr1[i] == arr2[j] && arr3[k] == arr1[i]) {
console.log(arr1[i]);
i++;
j++;
k++;
}
else if (arr1[i] < arr2[j]) {
i++;
}
else if (arr2[j] < arr3[k]) {
j++;
}
else {
k++;
}
}
}
const arr1 : number[] = [2, 5, 6, 7, 9, 12, 20, 25, 30, 31];
const arr2 : number[] = [4, 7, 10, 11, 20, 21, 30, 31, 37];
const arr3 : number[] = [1, 2, 5, 7, 9, 18, 19, 20, 31, 32, 38, 39, 40, 50];
PrintCommonElementsInThreeArrays(arr1, arr2, arr3);
/*
run:
7
20
31
*/