1071 : Distinct Substrings
时间限制Time Limit
5
秒Sec
内存限制Memory Limit
512
兆MB
提交次数Submitted
78
次Times
通过次数Solved
28
次Times
标准评测Standard Judge
题目描述Description
For a string s1, s2, …, sn, Bobo denotes the number of its distinct substrings as f(s1, s2, …, sn). He also defines h(c) = f(s1, s2, …, sn, c) − f(s1, s2, …, sn) for character c.
Given a string s1, s2, …, sn and m, find the value of $\bigoplus_{c = 1}^{m}\left(h(c) \cdot 3^c \bmod (10^9+7)\right)$.
Note that ⊕ denotes the bitwise exclusive-or (XOR).
输入格式Input
The input consists of several test cases and is terminated by end-of-file.
The first line of each test case contains two integers n and m.
The second line contains n integers s1, s2, …, sn.
- 1 ≤ n, m ≤ 106
- 1 ≤ si ≤ m
- The sum of n does not exceed 5 × 106.
- The sum of m does not exceed 5 × 106.
输出格式Output
For each test case, print an integer which denotes the result.
样例Sample
提示Hint
For the second test case, h(1) = h(2) = 2, h(3) = 3.
出题Author
ftiasch