```cpp
#include<bits/stdc++.h>
using namespace std;
int n=3;
int value[1<<8];
int winner[1<<8];
void dfs(int x){
if(x>=(1<<n)) return ;
dfs(2*x);
dfs(2*x+1);
int lvalue=value[2*x];
int rvalue=value[2*x+1];
if(lvalue>rvalue){
value[x]=lvalue;
winner[x]=winner[2*x];
}else{
value[x]=rvalue;
winner[x]=winner[2*x+1];
}
}
int main(){
cin>>n;
for(int i=0;i<=(1<<n);i++){
cin>>value[(1<<n)+i];
winner[(1<<n)+i]=i+1;
}
dfs(1);
int num=((value[2]>value[3])? winner[3]:winner[2]);
cout<<num;
return 0;
}
```
by j20130930j @ 2024-07-31 10:09:44
谢谢佬! @[j20130930j](/user/1409448)
by little_bug2331 @ 2024-08-12 11:54:10