#CF2255D. 万物何时终 / How Long Until Nothing Remains?

万物何时终 / How Long Until Nothing Remains?

题目描述

在最后一次出击之前,Chtholly向Willem提出了三个问题。

第一个问题是:倘若结局无可避免,还需要多久才会一切归于虚无?

Willem无法直接回答她。于是他写下 nn 个正整数 a1,a2,…,ana_1,a_2,\ldots,a_n。

每一次操作耗费一秒钟。在一次操作中,Willem完成如下步骤:

  • 选定一个下标 pp(1≤p≤n1\le p\le n);
  • 将 apa_p 修改为 ⌊ap2⌋\left\lfloor\dfrac{a_p}{2}\right\rfloor;对于所有 i≠pi\neq p,将 aia_i 修改为 ⌈ai2⌉\left\lceil\dfrac{a_i}{2}\right\rceil。所有数值的修改同时进行。

求出使得全部 nn 个整数都变为 00 所需要的最少秒数。

输入

每组数据包含多组测试用例。第一行输入测试用例数量 tt(1≤t≤1041 \le t \le 10^4)。接下来是各组测试用例。

每组测试用例第一行输入一个整数 nn(1≤n≤2⋅1051\le n\le2\cdot10^5),代表整数的个数。

第二行输入 nn 个整数 a1,a2,…,ana_1,a_2,\ldots,a_n(1≤ai≤1091\le a_i\le10^9),代表初始的各个整数。

保证所有测试用例的 nn 之和不超过 2⋅1052\cdot10^5。

输出

对每组测试用例,输出一个整数,即让所有整数全部变为 00 需要的最少秒数。

样例

5
1
3
3
1 1 1
3
1 2 4
2
5 2
6
1 2 3 4 5 6
2
3
3
3
6

说明

第一组测试用例中,唯一数字变化过程为 3→1→03\to1\to0,因此答案为 22。

第二组测试用例中,值为 11 的数只有选中它对应的下标时才会变成 00。因此至少需要 33 秒,每个下标各选一次即可完成。

第三组测试用例的最优操作序列:

  1. 选择 \(p=1\):[1,2,4]→[0,1,2][1,2,4]\to[0,1,2];
  2. 选择 \(p=2\):[0,1,2]→[0,0,1][0,1,2]\to[0,0,1];
  3. 选择 \(p=3\):[0,0,1]→[0,0,0][0,0,1]\to[0,0,0]。

第四组测试用例的最优变换过程 [5,2]→[2,1]→[1,0]→[0,0][5,2]\to[2,1]\to[1,0]\to[0,0],依次选择下标 11、22、11。

原题链接

原题链接