the infinite loop detector is finding my code to be bad.
when it takes large numbers it iterates a lot thus tests fail
i checked this and it works for [1,13] in online nodejs compiler
function flip(arr){
let result = []
for(let i=arr.length-1;i>=0;i--){
result.push(arr[i])
} return result }
function expand(arr){
let result =[]
for(let i=arr[0];i<=arr[1];i++){
result.push(i)
} return result }
function symGetLCM(num1, num2){
if(num1==num2){return num1}
let arr1 = []
let arr2 = []
let stopWhen = 2
for(let i=1;i<stopWhen;i++){
arr1.push(num1*i)
arr2.push(num2*i)
if(num1>num2){
if(arr1.includes(arr2[arr2.length-1])){
return arr2[arr2.length-1]}
else{stopWhen++}}
else{
if(arr2.includes(arr1[arr1.length-1])){
return arr1[arr1.length-1]}
else{stopWhen++}}
}
}
function smallestCommons(arr) {
if(arr[0]>arr[1]){arr = flip(arr)}
arr = expand(arr)
let result = symGetLCM(arr[0],arr[1])
for(let i=2;i<arr.length;i++){
result = symGetLCM(result,arr[i])
} return result
}
i think this was meant to be a feature but now its a bug