242просмотров
7.4%от подписчиков
18 марта 2026 г.
statsScore: 266
Задача: 852. Peak Index in a Mountain Array
Сложность: medium Вам дан целочисленный массив горы arr длины n, где значения увеличиваются до пикового элемента, а затем уменьшаются. Верните индекс пикового элемента. Ваша задача — решить это с временной сложностью O(log(n)). Пример:
Input: arr = [0,1,0] Output: 1 👨💻 Алгоритм: 1⃣Создайте целочисленную переменную i и инициализируйте её значением 0. 2⃣Используя цикл while, проверьте, если текущий элемент, на который указывает i, меньше следующего элемента на индексе i + 1. Если arr[i] < arr[i + 1], увеличьте i на 1. 3⃣В противном случае, если arr[i] > arr[i + 1], верните i. 😎 Решение:
class Solution {
public: int peakIndexInMountainArray(vector<int>& arr) { int i = 0; while (arr[i] < arr[i + 1]) { i++; } return i; }
}; Ставь 👍 и забирай 📚 Базу знаний