数据生成器
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
半仙发明了一个数据生成器。这个数据生成器内若有 个长度为 的数组 ,则这个数据生成器会输出 个长度为 的数组 ,满足 $\sum_{j=1}^{i}a\left[j\right]=s\left[i\right],\ b\left[i+1\right]-b\left[i\right]=d\left[i \right]\ \left(1\leq i\leq k\right)$,特别地,定义 。
初始时,数据生成器内 个数组均为空。
现在,半仙将进行 次操作:
p x y
:在 的前面插入 ,若 大于当前 数组长度,将 插在最后。在 的前面插入 ,若 大于当前 数组长度,将 插在最后。
每次操作后,设当前 数组长度为 (显然任意时刻 数组和 数组等长),半仙会用数据生成器生成 数组和 数组,并让你给出 $\left(\sum_{i=1}^{m}a\left[i\right]\times b\left[i\right]\right)\bmod2^{64}$。
输入格式
第一行个整数 , 为操作次数,其余见下文。
对于每次操作,生成 :
$$p=\left(\left(\left\lfloor\dfrac{\left(lastp\times a\right)\bmod2^{64}}{433}\right\rfloor+b\right)\bmod n\right)+1 $$$$x=\left(\left\lfloor\dfrac{\left(lastx\times c+lastans\right)\bmod2^{64}}{343}\right\rfloor+d\right)\bmod2^{64} $$$$y=\left(\left\lfloor\dfrac{\left(lasty\times e+lastans\right)\bmod2^{64}}{334}\right\rfloor+f\right)\bmod2^{64} $$为上一次生成的 , 为上一次生成的 , 为上一次生成的 , 为上一次的询问答案,初始时均为 。
输出格式
一行,一个整数,即所有询问答案的异或和。
样例
2 1 1 4 5 1 4
276148863378885552
3 3 4 3 3 4 3
2248318705165818224
数据范围
本题采用捆绑测试。
- Subtask #1(20 points):,共 个测试点。
- Subtask #2(20 points):,共 个测试点(依赖 Subtask #1)。
- Subtask #3(60 points):无特殊限制,共 个测试点(依赖 Subtask #1, Subtask #2)。
对于所有测试数据,。