```cpp
#include<iostream>
using namespace std;
int n,l;
struct data{
int val,id;
}a[10][130];
int pow(int n,int x){
int m=n;
for(int i=1;i<x;i++)n*=m;
return n;
}
data max(data a,data b){
return a.val>b.val?a:b;
}
int main()
{
std::ios::sync_with_stdio(0);
cin>>l;
n=pow(2,l);
for(int i=1;i<=n;i++)
cin>>a[0][i].val,a[0][i].id=i;
for(int i=1;i<=l;i++,n/=2)
for(int j=1,k=1;j<=n;j+=2,k++)
a[i][k]=max(a[i-1][j],a[i-1][j+1]);
cout<<(a[l-1][1].val>a[l-1][2].val?a[l-1][2].id:a[l-1][1].id)<<endl;
return 0;
}
```
by Zvelig1205 @ 2021-09-04 16:52:30