class Solution {
public:
int minMaxGame(vector<int>& nums) {
int i = 0;
int len = nums.size();
while(len != 1){
// i可到達的位置
int availableLen = len >> 1;
while(i < availableLen){
int ind = (i << 1);
if(1 == (i & 0x01)){
// 奇數
nums[i] = max(nums[ind], nums[ind + 1]);
}else{
// 偶數
nums[i] = min(nums[ind], nums[ind + 1]);
}
i++;
}
// 開始下一次通路
i = 0;
// 對半
len >>= 1;
}
return nums[0];
}
};