Описанный метод (максимума удельных приращений) не гарантирует получение строго оптимального решения, поскольку остановка процесса возможна при положительном остатке z. В таких случаях можно вернуться назад на один шаг, выбрать приращение по другой допустимой позиции (с меньшим значением сг ) и продолжить процесс. Перебор вариантов существенно увеличивает трудоемкость алгоритма, в особенности если начать ветвление с отката на большее число шагов. Свертка последних шагов может быть реализована методом динамического программирования.