#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n,maxx,deep;
ll a[1000000],b[20000]={0};
ll cengshu(ll n){//求层数
ll i=0;
while(n>0){
n-=pow(2,i);
i++;
}
return i;
}
int main(){
cin>>n;
for(ll i=1;i<=n;i++){//从第一层开始
cin>>a[i];
}
maxx=a[1];
deep=0;
for(ll i=0;i<cengshu(n);i++){//第几层
for(ll j=pow(2,i);j<pow(2,i+1);j++){
b[i]+=a[j];//每一层的权值
}
if(maxx<b[i]){
maxx=b[i];
deep=i;
}
}
cout<<deep+1<<endl;//由于i是从0开始的,所以层数必须+1
return 0;
}