Problem25219--求和

25219: 求和

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 128 MB

Description

给出n 个整数,第i 个数字为Ai,每对数字之间有一个和谐度。每对数字的和谐度定义
为这两个数字的and,or,xor 的和。而所有数的总和谐度是所有数对的和谐度的和。现在
你的任务是对于给定的n 个整数,求出它们的总和谐度。

Input

第一行一个整数n,表示有n 个整数。
第2 至n+1 行,每行有一个整数Ai,表示第i 个数。

Output

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

Sample Input Copy

3
1
2
3

Sample Output Copy

18

HINT

【样例解释】
有三个数分别为1,2,3。
和谐度分别为:
(1,2),和谐度是(1 and 2) + (1 or 2) + (1 xor 2) = 6;
(1,3),和谐度为(1 and 3) + (1 or 3) + (1 xor 3) = 6;
(2,3),和谐度为(2 and 3) + (2 or 3) + (2 xor 3) = 6;
故总和谐度为18。
【数据范围及约定】
对于50%的数据,1<=n<=10000.
对于100%的数据,1<=n<=1000000,0<=Ai<=30000.

Source/Category