JSFiddle - React, Tailwind, and code Playground

HTML

</--
chrome  
    [0, 10, 25, 51]
    batya - bad: 83 time: 1 
    Alex  - bad: 83 time: 6 

    [0, 10, 25, 51, 102, 204, 1024]
    batya - bad: 820657 time: 329
    Alex  - bad: 820657 time: 3219 

В FF Разница в ~ 4 раза, в EI9 ~ 3.5
--/>

JavaScript

function problemVlad(points, maxPoint) {
    var capacity = points.length,
        count = Math.pow(capacity, capacity),
        bad = 0,
        zerosArr = [],
        temp = "",
        sumNum;
    
    for (var i = 0; i < capacity; i++) {
        zerosArr.unshift(temp);
        temp += "0"
    }
    console.log (capacity,count,zerosArr);
    for (var i = 0; i < count; i++){
        console.log ("i=",i);
        temp = i.toString(capacity);
        console.log ('temp',temp);
        temp = zerosArr[temp.length-1] + temp;
        console.log ('temp',temp);
        sumNum = 0;
        for (var x = 0; x < temp.length; x++){
            sumNum += points[temp.charAt(x)];
        }
        console.log ('sumNum',sumNum);

        if (sumNum > maxPoint) {
            bad++
        }
    }
    return bad;
}
var str = "12345678";
for ( var c in str )console.log (str[c]);

var timeStart = Date.now();
var bad       = problemVlad([0], 101);
var timeEnd   = Date.now();
console.log("bad: "+bad, "time: "+ (timeEnd - timeStart));