Добрый день!
Такая задачка, есть некий список цифер (например 25 значений), есть необходимое число (например 1000), суть задачи: необходимо просуммировав все 25 значений в различных вариантах (1+2, 1+3, 1+2+3 2+3 ....) выбрать сумму наиболее приблеженную к заданной (1000).
С помощью рекурсии с прекращением оной, если сумма превысыла 1000 сейчас считает, считает ооооочень долго, мож кто чего подскажет ?
берешь первое число и складываешь по очереди со всеми остальными... находишь максимальную сумму которая не превышает заданаую... выкидываешь 1 и энное... и повторяешь пока результат не достигнет нужной суммы..
для более правильного нахождения данное повторить для всех чисел входящих в список...
в результате находишь минимальное количество чисел сумма которых дает заданную сумму
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший