编程题
### 问题描述 给出一个长为 $n$ 的序列 $a$,对于序列中的每个元素 $a_i$,你可以对其进行如下五种操作中的一种: - 将 $a_i$ 加 $1$。 - 将 $a_i$ 减 $1$。 - 将 $a_i$ 乘以 $2$。 - 将 $a_i$ 变为 $\lfloor\frac{a_i}{2}\rfloor$。 - 不做任何操作。 令 $f(x)$ 为操作完成后,$a$ 中元素 $x$ 出现的次数。求在最优操作下,最大的 $x \cdot f(x)$。 ### 输入格式 第一行输入一个整数 $n \space(1 \leq n \leq 10^5)$,代表序列长度。 接下来一行 $n$ 个整数 $a_i \space (1 \leq a_i \leq 10^5)$,代表序列中元素的值。 ### 输出格式 输出一行一个整数,代表最优操作策略下 $x \cdot f(x)$ 的最大值。 ### 样例输入 ``` 6 1 1 4 5 1 4 ``` ### 样例输出 ``` 16 ```
查看答案
赣ICP备20007335号-2