#P1844. 2024.7.13-KDXF-第三题-最少操作数

2024.7.13-KDXF-第三题-最少操作数

题目描述

塔子哥有一个大小为 nn 的序列 aa,每次操作可以选择序列 aa 中的一个数 xx,把 xx 变成 x×2x \times 2 或者 x2\left\lfloor \frac{x}{2} \right\rfloor(对同一个 xx 可以操作多次但不能既进行乘操作又进行除操作)。

塔子哥想知道最少需要操作多少次使得序列 aa 是不下降的。

输入描述

第一行输入一个整数 nn1n200001 \leq n \leq 20000)。第二行输入 nn 个整数表示序列 aa1ai200001 \leq a_i \leq 20000)。

输出描述

输出一行一个整数表示答案。

样例输入1

5
10 10 5 6 4

样例输出1

3

样例解释

对于序列 [10,10,5,6,4][10, 10, 5, 6, 4],我们可以进行以下操作:

  1. 将第一个 1010 变成 55(操作次数:1)。
  2. 将第二个 1010 变成 55(操作次数:1)。
  3. 将最后一个 44 变成 88(操作次数:1)。

最终序列为 [5,5,5,6,8][5, 5, 5, 6, 8],共进行了 3 次操作。

样例输入2

8
10 3 1 6 8 12 7 5

样例输出2

7