问题 5039 --集合异或

5039: 集合异或

题目描述

  tt喜欢数据结构,可是他面前有一道难题,他一下子就秒切了,为了提高你的水平,他把这道题给了你:
给定一个长度为 $n$ 的多重集 $A$,求出这个集合所有的非空子集中的所有元素和的异或和。

输入

第一行一个数 $n$ 。
然后 $n$ 行,每行 $1$ 个数可重集 $A$ 中的一个元素。
注意使用 scanf 或 cin 输入,不要使用快读输入 。

输出

输出一行一个数表示答案。

样例输入输出

输入#1 复制
2
1 3
输出#1 复制
6

提示

【样例解释】
  $\{1,3\}$集合的所有非空子集,$\{1\} ,\{3\}, \{ 1,3\}$,答案:$1 \oplus 3 \oplus (1+3)=6$ 。
$\oplus$ 指异或操作。

对于 $20\%$ 的数据,保证在样例中出现。
对于 $100\%$ 的数据, $\forall x\in A,x > 0$ ,$1 < n <1000,   \sum A_i\le 2\times 10^6$ 。

序号 标题 作者 发表时间 费用 订购数 操作