Код Senior Бинарный поиск обновлено
Любой локальный максимум
Условие
Найди индекс элемента, который больше обоих соседей. Края считаются граничащими с минус бесконечностью. Ответ любой из подходящих.
Что проверяют тесты
находит пик
монотонно возрастающий
один элемент
пик слева
Как подойти
Контринтуитивный пример: бинарный поиск не требует сортировки, достаточно свойства, по которому можно отбросить половину. Здесь: если nums[mid] < nums[mid+1], то справа гарантированно есть пик, потому что последовательность либо продолжит расти до конца, либо развернётся.
Подсказки: 2
- Сравнивай середину с правым соседом: подъём означает, что пик правее.
- Массив не отсортирован - и всё равно бинарный поиск работает.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.