How to find the index that split an array into two equal sum subarrays in Node.js

1 Answer

0 votes
function getSplitIndex(arr) { 
    const size = arr.length; 
    let leftSum = 0; 
    
    for (let i = 0; i < size; i++) { 
        leftSum += arr[i]; 
    
        let rightSum = 0; 
        for (let j = i + 1; j < size; j++) 
             rightSum += arr[j]; 
        if (leftSum == rightSum) 
            return i + 1; 
    } 
    
    return -1; 
}    
    
function printSplitParts(arr) { 
    const size = arr.length;
    const splitIndex = getSplitIndex(arr); 
        
    if (splitIndex == -1 || splitIndex == size) { 
        console.log("No equal parts"); 
        return; 
    } 
            
    for (let i = 0; i < size; i++) { 
        if (splitIndex == i) 
            console.log(); 
        console.log(arr[i]); 
    } 
} 
 
let arr1 = [3, -2, 9, 1, 5, 2, 2];
printSplitParts(arr1); 
          
console.log(); 
          
let arr2 = [4, 9, 0, 1, 3, 5, 2];
printSplitParts(arr2); 
  
  
  
  
/*
run:
 
3
-2
9

1
5
2
2

No equal parts
  
*/

 



answered Aug 6, 2022 by avibootz
...