#include<bits/stdc++.h>
      using namespace std;
      struct jiegouti{  
       	int power,id;  
      }; 
      jiegouti maxt(jiegouti a,jiegouti b){  
      	return a.power>b.power?a:b;
      }
      jiegouti mint(jiegouti a,jiegouti b){ 
      	return a.power<b.power?a:b;
      }
      jiegouti a[150],tree[600];
      void build(int node,int start,int end){ 
      	if(start==end){
      		tree[node]=a[start];
      		return;
      	}
      	int lnode=node*2;
      	int rnode=node*2+1;
      	int mid=(start+end)/2;
      	build(lnode,start,mid); 
      	build(rnode,mid+1,end);
      	tree[node]=maxt(tree[lnode],tree[rnode]);
      }
      int main(){
      	int n;
      	cin>>n;
      	for(int i=1;i<=(1<<n);i++){
      		cin>>a[i].power;
      		a[i].id=i;	
      	}
      	build(1,1,(1<<n));
      	cout<<mint(tree[2],tree[3]).id;
      	return 0;
      }