Исправлены логические ошибки, алгоритм работает