#2293
Min Max Game
pupil · 345 · lc easy +22 · verified · 64.2% accepted · 588 likes · top 67%
Description
You are given a 0-indexed integer array nums whose length is a power of 2.
Apply the following algorithm repeatedly:
- Let n be the length of nums. If n == 1, halt. Otherwise form newNums of length n / 2.
- For every even index i (where 0 <= i < n / 2), set newNums[i] = min(nums[2 * i], nums[2 * i + 1]).
- For every odd index i (where 0 <= i < n / 2), set newNums[i] = max(nums[2 * i], nums[2 * i + 1]).
- Set nums = newNums and repeat.
Return the final remaining element.
Example 1:
Input: nums = [1,3,5,2,4,8,2,2]
Output: 1
Explanation: The following arrays are the results of applying the algorithm repeatedly.
First: nums = [1,5,4,2]
Second: nums = [1,4]
Third: nums = [1]
1 is the last remaining number, so we return 1.
Example 2:
Input: nums = [3]
Output: 3
Explanation: 3 is already the last remaining number, so we return 3.
Code
1
2
3