Сообщество IT-специалистов
Ответы на любые вопросы об IT
Профессиональное развитие в IT
Удаленная работа для IT-специалистов
const arr = [[15], [25], [5], [20]].sort((a,b) => a[0]-b[0]).reduce(...) // => [[0,5], [5, 20], [20, 40], [40, 65]]
arr.reduce((acc, curr, i) => { const prev = i > 0 ? acc[i-1][1] : 0 return [...acc, [prev, curr[0] + prev]] }, [])
const result = [...arr] .sort((a, b) => a - b) .reduce((acc, n) => (acc[1].push([ acc[0], acc[0] += +n ]), acc), [ 0, [] ]) .pop();