#1221. 求和

求和

题目描述

给出n\red{n} 个整数,第i\red{i} 个数字为Ai\red{A_i},每对数字之间有一个和谐度。

每对数字的和谐度定义为这两个数字的andorxor 的和。

而所有数的总和谐度是所有数对的和谐度的和。

现在你的任务是对于给定的n\red{n} 个整数,求出它们的总和谐度。

输入格式

第一行一个整数n\red{n},表示有n\red{n} 个整数。

第二行n+1 行,每行有一个整数Ai\red{A_i},表示第i\red{i} 个数。

输出格式

输出一行表示总和谐度。答案保证在 2631\red{2^{63}-1} 以内。

样例

输入样例

3
1
2
3

输出样例

18

提示

样例解释: 有三个数分别为1\red{1},2\red{2},3\red{3}。 和谐度分别为:

  • (1\red{1}2\red{2}),和谐度是(1\red{1} and 2\red{2}) + (1\red{1} or 2\red{2}) + (1\red{1} xor 2\red{2}) = 6\red{6}
  • (1\red{1}3\red{3}),和谐度为(1\red{1} and 3\red{3}) + (1\red{1} or 3\red{3}) + (1\red{1} xor 3\red{3}) = 6\red{6}
  • (2\red{2}3\red{3}),和谐度为(2\red{2} and 3\red{3}) + (2\red{2} or 3\red{3}) + (2\red{2} xor 3\red{3}) = 6\red{6}

故总和谐度为18\red{18}

数据范围 对于50%\red{50\%}的数据,1<=n<=10000.\red{1<=n<=10000.}

对于100%\red{100\%}的数据,1<=n<=10000000<=Ai<=30000.\red{1<=n<=1000000,0<=A_i<=30000.}