function bakeFactory(input) { input = input.slice(0, input.length - 1); let batchesObjArr = [] for (let i = 0; i < input.length; i++) { let batch = input[i]; let batchArr = batch.split("#"); batchArr = batchArr.map(Number); let sum = 0; batchArr.forEach(element => { sum += element; }); batchesObjArr.push({ batch: batchArr, totalQ: sum, average: sum / batchArr.length }); } batchesObjArr = batchesObjArr.sort(function (a, b) { return b.totalQ - a.totalQ; }) let bestBatch = batchesObjArr[0].totalQ; batchesObjArr = batchesObjArr.filter((element => element.totalQ == bestBatch)); batchesObjArr = batchesObjArr.sort(function (a, b) { return b.average - a.average; }) batchesObjArr=batchesObjArr.sort(function(a,b){ return a.batch.length-b.batch.length; }) console.log(`Best Batch quality: ${bestBatch}`); console.log(batchesObjArr[0].batch.join(" ")); }