#include <bits/stdc++.h>
using namespace std;
int n;
int a[205], dp[205];
int main(){
scanf("%d", &n);
memset(dp, -1, sizeof(dp));
for (int i = 1; i <= n; i++)
scanf("%d", &a[i]);
dp[1] = 0;
for (int i = 1; i < n; i++){
if (a[i + 1] - a[i] <= 1)
dp[i + 1] = dp[i] + 1;
else
for (int k = 1; k < i; k++)
if (a[i - k] + (1<<k) >= a[i + 1])
dp[i + 1] = dp[i] + k + 1;
}
printf("%d", dp[n]);
return 0;
}