Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Помогите с суммой в массиве (https://javascript.ru/forum/misc/68879-pomogite-s-summojj-v-massive.html)

Signal 16.05.2017 02:59

Помогите с суммой в массиве
 
Здравствуйте многоуважаемые!
задача такая, не знаю как оно называется в матиматике.
скажем есть массив чисел
var ArrayS=[2, 1.25, 0.22, 0.12, 1.43, 3.56, 8.12, 0.67, 0.34, 0.56, 1.26, 1.76, 0.87];

И есть максимальная сумма, скажем
var SumNado = 5.67;

не как не могу допетрить, как сделать массив элементов из ArrayS, сумма которых максимально приближена к числу SumNado но не больше него

ksa 16.05.2017 08:32

Цитата:

Сообщение от Signal
не как не могу допетрить, как сделать массив элементов из ArrayS, сумма которых максимально приближена к числу SumNado но не больше него

Как вариант, определить некую "дельту" (предельно малую величину) и тогда можно сравнивать разность

SumNado - arr[i]

Она должна быть положительной но меньше той "дельты"...

рони 16.05.2017 09:20

Signal,
надо строить и дерево всех комбинаций и обрубать ветки если сумма узлов больше лимита, потом фильтровать все вершины на максимум ... как-то так


Часовой пояс GMT +3, время: 00:00.