3992 - 数据处理

题目描述

某数据中心刚刚接收了一批数据,包含 N 个数值,第 i 个数值为 a_i

为了优化存储结构,系统管理员需要对这批数据进行多轮处理。在每一轮处理中,必须对每一个数据都执行一次操作。对于每个数据,系统可以选择以下两种操作之一:

  1. 压缩操作:将数值 a_i 除以 2。执行此操作的前提是 a_i 必须为偶数(即操作后的数值仍为整数)。
  2. 扩展操作:将数值 a_i 乘以 3
  3. 在每一轮处理中,必须至少有一个数据行了“压缩操作”,其余数据可以选择压缩(仅偶数)或扩展(任意数)。如果某一轮无法满足该要求(即所有数据都无法进行压缩),则处理流程终止。

请你计算,在最优的策略下,这批数据最多能进行多少轮处理?

输入

第一行包含一个整数 N,表示数据的数量。

第二行包含 N 个整数 a_1, a_2, \ldots, a_N,表示每个数据的初始数值。

输出

输出一个整数,表示最多可以进行的处理轮数。

样例

输入

3
5 2 4

输出

3

输入

4
631 577 243 199

输出

0

输入

10
2184 2126 1721 1800 1024 2528 3360 1945 1280 1776

输出

39
说明

样例 1 解释

初始数值为 {5, 2, 4}。其中一种可行的 3 轮操作方案如下:

  1. 第一轮:

    • 5 执行扩展操作:5 \times 3 = 15
    • 2 执行扩展操作:2 \times 3 = 6
    • 4 执行压缩操作:4 / 2 = 2
    • (满足至少有一个压缩操作)此时序列变为 {15, 6, 2}
  2. 第二轮:

    • 15 执行扩展操作:15 \times 3 = 45
    • 6 执行压缩操作:6 / 2 = 3
    • 2 执行扩展操作:2 \times 3 = 6
    • (满足至少有一个压缩操作)此时序列变为 {45, 3, 6}
  3. 第三轮:

    • 45 执行扩展操作:45 \times 3 = 135
    • 3 执行扩展操作:3 \times 3 = 9
    • 6 执行压缩操作:6 / 2 = 3
    • (满足至少有一个压缩操作)此时序列变为 {135, 9, 3}

此时序列中所有数字均为奇数,无法再进行任何压缩操作,流程终止。总共进行了 3 轮。

样例 2 解释

所有数据的数值均为奇数,没有任何一个数能执行压缩操作,因此第 1 轮无法启动。答案为 0。

数据范围

对于 100\% 的数据,满足 1 \le N \le 100001 \le a_i \le 10^9

标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 0
通过人数 0
金币数量 3 枚
难度 入门


上一题 下一题