525-contiguous-array

DevGod needs to write a blog entry for this problem!
/**
 * @param {number[]} nums
 * @return {number}
 */
var findMaxLength = function(nums) {
    //1,1,1,1,0,1,1,1
    //1,2,3,4,3,4,5,6

    //0,1,0,1
    //-1,0,-1,0

    let prefixSum = 0;
    let score = 0;
    let myMap = new Map();
    myMap.set(0,-1);
    for(let a=0; a<nums.length; a++){
        if(nums[a] ==0){
            prefixSum += -1;
        }else{
            prefixSum += 1;
        }
        if(!myMap.has(prefixSum)){
            myMap.set(prefixSum,a);
        }
        if(score < a-myMap.get(prefixSum)){
            score = a-myMap.get(prefixSum);
        }
    }
    
    return score;
};