mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-11 02:58:13 +08:00
47 lines
1.5 KiB
HTML
47 lines
1.5 KiB
HTML
<p>Let's call an array <code>arr</code> a <strong>mountain</strong> if the following properties hold:</p>
|
|
|
|
<ul>
|
|
<li><code>arr.length >= 3</code></li>
|
|
<li>There exists some <code>i</code> with <code>0 < i < arr.length - 1</code> such that:
|
|
<ul>
|
|
<li><code>arr[0] < arr[1] < ... arr[i-1] < arr[i] </code></li>
|
|
<li><code>arr[i] > arr[i+1] > ... > arr[arr.length - 1]</code></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
|
|
<p>Given an integer array <code>arr</code> that is <strong>guaranteed</strong> to be a mountain, return any <code>i</code> such that <code>arr[0] < arr[1] < ... arr[i - 1] < arr[i] > arr[i + 1] > ... > arr[arr.length - 1]</code>.</p>
|
|
|
|
<p> </p>
|
|
<p><strong>Example 1:</strong></p>
|
|
|
|
<pre>
|
|
<strong>Input:</strong> arr = [0,1,0]
|
|
<strong>Output:</strong> 1
|
|
</pre>
|
|
|
|
<p><strong>Example 2:</strong></p>
|
|
|
|
<pre>
|
|
<strong>Input:</strong> arr = [0,2,1,0]
|
|
<strong>Output:</strong> 1
|
|
</pre>
|
|
|
|
<p><strong>Example 3:</strong></p>
|
|
|
|
<pre>
|
|
<strong>Input:</strong> arr = [0,10,5,2]
|
|
<strong>Output:</strong> 1
|
|
</pre>
|
|
|
|
<p> </p>
|
|
<p><strong>Constraints:</strong></p>
|
|
|
|
<ul>
|
|
<li><code>3 <= arr.length <= 10<sup>4</sup></code></li>
|
|
<li><code>0 <= arr[i] <= 10<sup>6</sup></code></li>
|
|
<li><code>arr</code> is <strong>guaranteed</strong> to be a mountain array.</li>
|
|
</ul>
|
|
|
|
<p> </p>
|
|
<strong>Follow up:</strong> Finding the <code>O(n)</code> is straightforward, could you find an <code>O(log(n))</code> solution? |