#include<bits/stdc++.h>
using namespace std;
int n,a[205],dp[205];
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=2;i<=n;i++){
dp[i]=1e9;
}
for(int i=2;i<=n;i++){
if(a[i]-a[i-1]<=1){
dp[i]=dp[i-1]+1;
}
for(int j=2;j<i;j++){
for(int k=1;k<j;k++){
if(1<<(j-k)+a[k]>=a[i]){
dp[i]=min(dp[i],dp[j]+(j-k)+1);
}
}
}
}
if(dp[n]>=1e9){
cout<<-1;
}else{
cout<<dp[n];
}
return 0;
}