Есть такой алгоритм для поиска первого вхождения числа с помощью бинарного поиска.
int lower_bound(const vector
Как его можно записать с помощью рекурсии?
Ответ
Вначале пара замечаний по коду
Никогда не создавайте переменных с именем l. Они неотличимы от 1 и сильно понижают читабельность кода
Для двоичного поиска переменная m должна вычисляться по формуле
m = (left + right) / 2
поиск потому и "двоичный", что отрезок делится на равные части
А теперь код
int lower_bound_r(const vector
int lower_bound(const vector
Комментариев нет:
Отправить комментарий