for (let a = 1; a < 10; a++) { for (let b = 1; b < 10; b++) { if (a === b) continue; for (let c = 1; c < 10; c++) { if (a === c || b === c) continue; full.push(a * 100 + b * 10 + c * 1); } } }
constcompare = (numA, numB) => numA .toString() .split("") .reduce( (acc, cur, curIdx) => { numB .toString() .split("") .forEach((v, i) => { if (v === cur) i === curIdx ? acc[0]++ : acc[1]++; }); return acc; }, [0, 0] );
return baseball.reduce( (acc, game) => acc.filter( num =>compare(num, game[0]).join("") === "" + game[1] + game[2] ), full ).length; }