Кто освоил Поиск решения, помогите разобраться с простой (вроде) задачей. Сам справиться не смог.
Есть цифровой ряд, например:
3171532538
2937784320
2201862144
1576968192
1468350464
1468035072
1467871232
1467850752
1370968064
1302675600
1173901312
704047104
652073656
нужно из него выбрать числа на сумму, максимально приближающуюся к заданному числу (<= 8500594688).
Каждое число добавляется только один раз.
Для чего это нужно. Оптимизация файлов (фильмов) под размер болванки DVD-R. Пробовал несколько программ (Ignition, CalcDVDR, NovA Collection Divider, nnbackup228.exe) - во всех примитивный алгоритм подбора - просто берут самый большой файл, вычитают его из размера болванки и ищут наибольший файл меньше этой разности. Всё. Нормальную утилиту так и не нашел
Раньше подбирал руками. На однослойную болванку хорошо ложатся два фильма под 2350000 или три - 2,18, 1,5, 700 - один из них должен быть Мб на 200 больше стандарта или 3 х 1560000.
Сейчас подешевели двухслойные болванки 8500 - их заполнить руками гораздо сложнее.
Размеры файлов можно получить командой dir (dir/S/-C/N/G> C:\1.txt), открыть Вордом, с альтом выделить столбик, вставить в Excel как юникод, размеры фильмов-папок проще добавлять руками.
Лет 10 назад использовал Поиск решения для подгонки накладных под заданную сумму. Помню, использовал округление количеств, так как поиск решения делал количества товара дробными. Вот здесь это дробление очень сильно мешает. Добавлял условие цел. целое - не помогаить.