#include <bits/stdc++.h>
using namespace std;
struct TEAM{
int id;int score;
}t[500];
int n,m;
void dfs(int u,int st) {
if(u == n - 1) return;
for(int i = 1,idx = 1;i <= st;i += 2) {
t[idx++].score = max(t[i].score,t[i + 1].score);
}
dfs(u + 1,st / 2);
}
int main(){
cin >> n;
m = pow(2,n);
for(int i = 1;i <= m;i++) {
cin >> t[i].score;
t[i].id = i;
}
dfs(0,m);
if(t[1].score > t[2].score) {
cout << t[2].id << endl;
}else {
cout << t[1].id << endl;
}
return 0;
}