CF1879D.Sum of XOR Functions

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You are given an array aa of length nn consisting of non-negative integers.

You have to calculate the value of l=1nr=lnf(l,r)(rl+1)\sum_{l=1}^{n} \sum_{r=l}^{n} f(l, r) \cdot (r - l + 1) , where f(l,r)f(l, r) is alal+1ar1ara_l \oplus a_{l+1} \oplus \dots \oplus a_{r-1} \oplus a_r (the character \oplus denotes bitwise XOR).

Since the answer can be very large, print it modulo 998244353998244353 .

输入格式

The first line contains one integer nn ( 1n31051 \le n \le 3 \cdot 10^5 ) — the length of the array aa .

The second line contains nn integers a1,a2,,ana_1, a_2, \dots, a_n ( 0ai109)0 \le a_i \le 10^9) .

输出格式

Print the one integer — the value of l=1nr=lnf(l,r)(rl+1)\sum_{l=1}^{n} \sum_{r=l}^{n} f(l, r) \cdot (r - l + 1) , taken modulo 998244353998244353 .

输入输出样例

  • 输入#1

    3
    1 3 2

    输出#1

    12
  • 输入#2

    4
    39 68 31 80

    输出#2

    1337
  • 输入#3

    7
    313539461 779847196 221612534 488613315 633203958 394620685 761188160

    输出#3

    257421502

说明/提示

In the first example, the answer is equal to $f(1, 1) + 2 \cdot f(1, 2) + 3 \cdot f(1, 3) + f(2, 2) + 2 \cdot f(2, 3) + f(3, 3) = $ =1+22+30+3+21+2=12= 1 + 2 \cdot 2 + 3 \cdot 0 + 3 + 2 \cdot 1 + 2 = 12 .

首页