JavaScript. Дан массив из 10 массивов, каждый маленький массив заполнен 10 числами. Нужно вывести 3 массива, сумма элементов которых будет максимальна

текст, выделенный жирным шрифтом


Ответы (1 шт):

Автор решения: vsemozhebuty

Например, так (не самое эффективное решение, но более-менее простое):

const arrays = [
  [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
  [1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
  [2, 2, 2, 2, 2, 2, 2, 2, 2, 2],
  [3, 3, 3, 3, 3, 3, 3, 3, 3, 3],
  [4, 4, 4, 4, 4, 4, 4, 4, 4, 4],
  [5, 5, 5, 5, 5, 5, 5, 5, 5, 5],
  [6, 6, 6, 6, 6, 6, 6, 6, 6, 6],
  [7, 7, 7, 7, 7, 7, 7, 7, 7, 7],
  [8, 8, 8, 8, 8, 8, 8, 8, 8, 8],
  [9, 9, 9, 9, 9, 9, 9, 9, 9, 9],
];

const max3 = arrays.sort((a, b) => {
  const aSum = a.reduce((acc, num) => acc + num);
  const bSum = b.reduce((acc, num) => acc + num);
  return bSum - aSum;
}).slice(0, 3);

console.log(max3);

→ Ссылка