D3P1

 avatar
unknown
javascript
4 years ago
889 B
94
Indexable
function d3p1(){
    let file = readTextFile("DayThree");
    const array = file.split("\n");
    let gammarate = [];
    let epsilonrate = [];
    let zeroCount = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
    let oneCount = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];

    for (let i = 0; i < array.length; i++){
        for (let k = 0; k < array[i].length; k++){
            if (array[i][k] == "0"){
                zeroCount[k]++;
            } else if (array[i][k] == "1"){
                oneCount[k]++;
            }
        }
    }

    for (j = 0; j < 12; j++){
        if (zeroCount[j] > oneCount[j]){
            gammarate.push("0");
            epsilonrate.push("1");
        }else{
            gammarate.push("1");
            epsilonrate.push("0");
        }
    }

    return (binaryToDecimal(gammarate.join("")) * binaryToDecimal(epsilonrate.join("")));
}
Editor is loading...