A70086.宝石项链

普及-

官方

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

小明获得了一条美丽的宝石项链, 上面有 nn 个颜色各异的宝石,第 ii 宝石的颜色使用数字 aia_i 来表示。

在一串项链中,对于同一种颜色的宝石, 会产生一定的的美丽值,美丽值为该颜色宝石的颜色值 ×\times 所有该颜色宝石的编号的异或和(异或和为所有数连续异或的结果),整个项链的美丽值为每一种颜色宝石产生的美丽值的总和。

请问对于给定的宝石项链, 整串项链的美丽值是多少?

输入格式

第一行输入一个整数 n(1n200000)n (1 \le n \le 200000),代表宝石项链的长度。

接下来是 nn 个数字 a1,a2,...an(0ai109)a_1, a_2, ... a_n (0 \le a_i \le 10^9) ,代表 nn 个宝石的颜色。

输出格式

输出一个整数, 代表该宝石项链的美丽值。

输入输出样例

  • 输入#1

    6
    3 6 3 6 6 3

    输出#1

    30

说明/提示

\oplus 符号表示异或运算。

对于样例 11,可以按照颜色分为两组:

1、 颜色为 33 的宝石, 编号为 [1,3,6][1, 3, 6] ,产生美丽值为 (136)3=12(1 \oplus 3 \oplus 6) \cdot 3 = 12

2、 颜色为 66 的宝石, 编号为 [2,4,5][2 , 4, 5] ,产生美丽值为 (245)6=18(2 \oplus 4 \oplus 5) \cdot 6 = 18

因此答案为 12+18=3012 + 18 = 30

首页