VK Cup 2017 - Round 2
D
Varying Kibibits
Codeforces
2700
原题
← CE →
翻译中…

You are given $*n*$ integers $*a*_{1}, *a*_{2}, ..., *a*_{*n*}$. Denote this list of integers as $*T*$.

翻译中…

Let $*f*(*L*)$ be a function that takes in a non-empty list of integers $*L*$.

翻译中…

The function will output another integer as follows:

翻译中…
  • First, all integers in $*L*$ are padded with leading zeros so they are all the same length as the maximum length number in $*L*$.
  • We will construct a string where the $*i*$-th character is the minimum of the $*i*$-th character in padded input numbers.
  • The output is the number representing the string interpreted in base 10.
翻译中…

For example $*f*(10, 9) = 0$, $*f*(123, 321) = 121$, $*f*(530, 932, 81) = 30$.

翻译中…

Define the function

翻译中…

image

翻译中…

Here,

翻译中…

image

翻译中…

denotes a subsequence.

翻译中…

In other words, $*G*(*x*)$ is the sum of squares of sum of elements of nonempty subsequences of $*T*$ that evaluate to $*x*$ when plugged into $*f*$ modulo $1 000 000 007$, then multiplied by $*x*$. The last multiplication is not modded.

翻译中…

You would like to compute $*G*(0), *G*(1), ..., *G*(999 999)$. To reduce the output size, print the value image, where image denotes the bitwise XOR operator.

翻译中…

Input

翻译中…

The first line contains the integer $*n*$ ($1 ≤ *n* ≤ 1 000 000$) — the size of list $*T*$.

翻译中…

The next line contains $*n*$ space-separated integers, $*a*_{1}, *a*_{2}, ..., *a*_{*n*}$ ($0 ≤ *a*_{*i*} ≤ 999 999$) — the elements of the list.

翻译中…

Output

翻译中…

Output a single integer, the answer to the problem.

翻译中…

Note

翻译中…

For the first sample, the nonzero values of $*G*$ are $*G*(121) = 144 611 577$, $*G*(123) = 58 401 999$, $*G*(321) = 279 403 857$, $*G*(555) = 170 953 875$. The bitwise XOR of these numbers is equal to $292 711 924$.

翻译中…

For example, image, since the subsequences $[123]$ and $[123, 555]$ evaluate to $123$ when plugged into $*f*$.

翻译中…

For the second sample, we have image

翻译中…

For the last sample, we have image, where image is the binomial coefficient.

翻译中…

样例

Input #1
3
123 321 555
Output #1
292711924
InputCopy OutputCopy
Input #2
1
999999
Output #2
997992010006992
InputCopy OutputCopy
Input #3
10
1 1 1 1 1 1 1 1 1 1
Output #3
28160
InputCopy OutputCopy
题目信息
题号
772D
时间限制
3 s
内存限制
256 MB
标签
位运算
动态规划

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。