What Split in Array Yields Min Value
Write a function that, given a non-empty zero-indexed array A of N integers, returns the minimal difference that can be achieved.
by Hugh Chapman
HTML
<div id="Result"></div>
JavaScript
var A = [3,1,2,4,3];
var rside = 0;
var lside = 0;
var diff = 0;
var min = Number.MAX_VALUE;
// sum the array
for (var i=0; i < A.length; i++) {
rside += A[i];
}
// iterate the array -1 - because number of splits is n-1
for (var i=0; i < A.length - 1; i++) {
lside += A[i];
diff = Math.abs(lside - (rside - lside)); //rside might be a lil confusing - actual rside is tot-lside
if(diff < min) min = diff;
}
document.querySelector('#Result').textContent = min.toString();