Codility 1.1

by Igor Cuckovic

JavaScript

var A = [3, 1, 2, 4, 3];

function solution(A) {
    // you can use console.log for debugging purposes, i.e.
    // console.log('this is debug message');
    // write your code in JavaScript (ECMA-262, 5th edition)
    
    var firstToNumber = function (number) {
        var result = 0;
        for ( var i = 0; i < number + 1; i += 1) {
            result += A[i];
        }
        return result;
    };
    
    var numberToEnd = function (number) {
        var result = 0;
        for ( var i = number + 1; i < A.length; i += 1) {            
            result += A[i];
        }
        return result;
    
    };
    
    var calculateDiffrence = function (number) {
        return Math.abs(firstToNumber(number) - numberToEnd(number));
    };
    
    var A1 = [], i;
    
    if (A.length > 0) {
        for (i = 0; i < A.length; i += 1 ) {
           A1.push(calculateDiffrence(i));
        }
    }
    
    Array.min = function( array ){
    return Math.min.apply( Math, array );
    };
    
    return(Array.min(A1));
}

console.log(solution(A));