#caddi2018c. [caddi2018_c]Negative Doubling

[caddi2018_c]Negative Doubling

题目描述

给定 NN 个正整数 A1,A2,...,ANA_1, A_2, ..., A_N。Takahashi 可以对这些整数执行以下操作任意次数:

  • 选择 1iN1 \leq i \leq N,并将 AiA_i 的值乘以 2-2

请注意,他将其乘以负二。

他希望满足 A1A2...ANA_1 \leq A_2 \leq ... \leq A_N。找到所需的最小操作数。如果不可能,则打印-1

约束条件

  • 1N2000001 \leq N \leq 200000
  • 1Ai1091 \leq A_i \leq 10^9

输入

输入以以下格式从标准输入中给出。

NN

A1A_1 A2A_2 ... ANA_N

输出

打印答案。

输入样例1

4
3 1 4 1

输出样例1

3

一种可能的解决方案是:

  • 选择 i=4i=4,并将 A4A_4 的值乘以 2-2。现在 A1,A2,A3,A4A_1, A_2, A_3, A_43,1,4,23, 1, 4, -2
  • 选择 i=1i=1,并将 A1A_1 的值乘以 2-2。现在 A1,A2,A3,A4A_1, A_2, A_3, A_46,1,4,2-6, 1, 4, -2
  • 选择 i=4i=4,并将 A4A_4 的值乘以 2-2。现在 A1,A2,A3,A4A_1, A_2, A_3, A_46,1,4,4-6, 1, 4, 4

输入样例2

5
1 2 3 4 5

输出样例2

0

在执行任何操作之前,A1A2...ANA_1 \leq A_2 \leq ... \leq A_N 成立。

输入样例3

8
657312726 129662684 181537270 324043958 468214806 916875077 825989291 319670097

输出样例3

7