题目描述
萌萌哒Salroey最近得到了一个长度为n的正整数数列Si,下标从1开始标号, 她现在想让
你对于一个给定正整数k,求出tj表示区间[j,j+k−1]中所有元素的乘积(1≤j≤n−k+1)。
为了方便输出,你只需要把所有tj对P取模之后,输出它们的异或和。
输入格式
第一行三个正整数n,k,P,分别表示序列长度,区间长度和模数。
第二行四个整数A,B,C,D,用来生成数据,Si定义如下:
S1=A;Si=(Si−1×B+C) mod D
输出格式
输出一行一个整数表示ti mod P的异或和。
样例
输入样例1
4 2 10
5 1 1 10
输出样例1
4
输入样例2
1000 97 96998351
41 1668 505 2333
输出样例2
1749769
提示
对于20%的数据,n≤1000
对于50%的数据,n≤2×105
另有20%的数据,n≤2×106;n−k≤10
对于100%的数据,1≤k≤n≤2×107;0≤A,B,C<D≤109;1≤P≤109
在所有数据中均匀分布着50%的数据满足P是质数,这50%的数据中有50%满足P≤107。