#3294. 递增序列

递增序列

说明

给定一个 $a$ 数组,长度为 $n$ ,同时可以对数组中的元素进行以下操作:
- 选择任意位置元素 $a_i$ ,$(1≤i≤n)$ ,将 $a_i$整除 $2$。
我们希望最后的整数序列严格递增,即 $a_1<a_2<a_3...<a_n$
请你输出满足此条件的序列所需最少的操作次数,或者输出 $-1$ 确定不可能获得这样的序列。

输入格式

输入的第一行包含一个整数 $t$ ,表示多组数据的测试用例数量,(注意多组数据的影响)
对于每组数据,先输入一个整数 $n$,接下来第二行 $n$ 个整数 $a_i$,表示第 $i$ 个整数的大小。

输出格式

输出 $t$ 行,每行一个整数表示对序列操作的最少次数,使得序列严格递增。无法获得这样的序列输出 "-1"。

样例

6
3
3 6 5
4
5 4 3 2
5
1 2 3 4 5
4
2 8 7 5
5
8 26 5 21 10
10
0 1 2 3 4 5 6 7 1024 1
2
-1
0
4
11
-1

提示

【数据范围】
对于$100\%$ 的数据保证:$1 ≤ t ≤ 10000,1 ≤ n ≤ 30,0 ≤ a_i ≤  2*10^9$ 。