AT_pakencamp_2022_day3_i Prefix Or
题目描述
给定一个长度为 $N$ 的非负整数序列 $A=(A_1,A_2,\ldots,A_N)$。你可以任意重新排列 $A$ 的元素。请你求出如下式子可能取得的最小值:
$$ \displaystyle \sum_{k=1}^N (A_1 \lor A_2 \lor \cdots \lor A_k) $$
其中 $\lor$ 表示按位 $\operatorname{OR}$ 操作。
按位 $\operatorname{OR}$ 操作对非负整数 $A,B$ 定义为:$A\lor B$ 的二进制表示的 $2^k$ 位上,若 $A,B$ 二进制表示的 $2^k$ 位中至少有一个为 $1$,则该位为 $1$,否则为 $0$。
例如,$3\lor5=7$,用二进制表示为 $010\lor101=111$。
输入格式
输入格式如下,通过标准输入读入。
> $N$ $A_1$ $A_2$ $\ldots$ $A_N$
输出格式
请输出答案。
说明/提示
## 样例解释 1
将 $A$ 排成 $(1,2,4)$,则有 $(A_1)+(A_1\lor A_2)+(A_1\lor A_2\lor A_3)=1+3+7=11$,这是最小值。
## 样例解释 2
将 $A$ 排成 $(2,6,5)$,则有 $(A_1)+(A_1\lor A_2)+(A_1\lor A_2\lor A_3)=2+6+7=15$,这是最小值。
## 数据范围
- $1 \le N \le 2\times 10^5$
- $1 \le A_i \le 2\times 10^5$
- 输入均为整数。
由 ChatGPT 5 翻译