AT_caddi2018_c Negative Doubling
题目描述
有 $N$ 个正整数 $A_1,\ A_2,\ ...,\ A_N$。高桥君可以对这些整数进行任意次数如下操作:
- 选择 $1 \leq i \leq N$,将 $A_i$ 的值变为 $-2$ 倍。
请注意,这里是**负** $2$ 倍。
高桥君希望使得 $A_1 \leq A_2 \leq ... \leq A_N$ 成立。请你求出为此所需操作次数的最小值。如果无法做到,请输出 $-1$。
输入格式
输入以以下格式从标准输入读入:
> $N$ $A_1$ $A_2$ $...$ $A_N$
输出格式
请输出答案。
说明/提示
## 限制条件
- $1 \leq N \leq 200000$
- $1 \leq A_i \leq 10^9$
## 样例解释 1
例如,可以按如下方式操作:
- 选择 $i=4$,将 $A_4$ 的值变为 $-2$ 倍。此时 $A_1,\ A_2,\ A_3,\ A_4$ 分别为 $3,\ 1,\ 4,\ -2$。
- 选择 $i=1$,将 $A_1$ 的值变为 $-2$ 倍。此时 $A_1,\ A_2,\ A_3,\ A_4$ 分别为 $-6,\ 1,\ 4,\ -2$。
- 选择 $i=4$,将 $A_4$ 的值变为 $-2$ 倍。此时 $A_1,\ A_2,\ A_3,\ A_4$ 分别为 $-6,\ 1,\ 4,\ 4$。
## 样例解释 2
即使不进行任何操作,也已经满足 $A_1 \leq A_2 \leq ... \leq A_N$。
由 ChatGPT 4.1 翻译