在经过地球防卫小队的数学家连续多日的工作后,外星人发的密码终于得以破解。它告诉我们在地球某一处的古老遗迹中,存在有对抗这次灾难的秘密武器。防卫小队立即赶到这处遗迹。
要进入遗迹,需要通过一段迷之阶梯。登上阶梯必须要按照它要求的方法,否则就无法登上阶梯。它要求的方法有以下三个限制:
1. 如果下一步阶梯的高度只比当前阶梯高 1,则可以直接登上。
2. 除了第一步阶梯外,都可以从当前阶梯退到前一步阶梯。
3. 当你连续退下 k 次阶梯后,你可以一次跳上不超过当前阶梯高度 +2^{k} 的阶梯。
比如说你现在位于第 j 步阶梯,并且是从第 j+k 步阶梯退下来的,那么你可以跳到高度不超过当前阶梯高度 +2^{k} 的任何一步阶梯。 跳跃这一次只算一次移动。
开始时我们在第 1 步阶梯,由于时间紧迫,我们需要用最少的移动次数登上迷之阶梯。 请你计算出最少的移动步数。
第一行:一个整数 N,表示阶梯步数。
第二行:N 个整数,依次为每层阶梯的高度,保证递增。
第一行:一个整数,如果能登上阶梯,输出最小步数,否则输出 -1。
5 0 1 2 3 6
7
【样例解释】
连续登 3 步,再后退 3 步,然后直接跳上去。
【数据范围】
对于 50\% 的数据,N\le20。
对于 100\% 的数据,1\le N\le200,每步阶梯高度不超过 2^{31}-1。