#P5012. 水の数列
水の数列
题目背景
想到了一个很好玩的游戏呢...
题目描述
现在给你一个长度为的数列,你可以选择一个数,然后获得一个得分,得分越大越好。
得分是这样计算的:
首先把小于等于的数标记,然后你的得分就是每一个连续标记的区间的长度的平方和。
觉得这样太简单了,答案显然就是最大值嘛所以他就把得分改成了原来的得分除以你选择的数。
还是觉得这样太简单了,所以他需要你选择的数得到的区间的个数在~的范围内。
还是觉得这样太简单了,所以他加上了组询问。
还是觉得这样太简单了,所以他决定强制在线。
输入格式
第一行两个正整数,。
第二行个正整数表示给出的数列。
接下来行,每行四个正整数,,,,你需要这样得到真正的和:
l = (a * lastans + x - 1) % n + 1;
r = (b * lastans + y - 1) % n + 1;
if (l > r) swap(l, r);
其中表示上一次询问的最大分数(原始得分)和得到这个最大的分数的的乘积。特别的,我们令第一次询问时。
输出格式
行,每行两个正整数表示每一次询问能得到的最大的分数(原始的得分)和得到这个最大的分数的。特别的,如果无解输出""(此时 为 )。如果有多解则输出选择的数最大的一组。
想知道你是不是蒙的,所以你还需要告诉他这一次询问的,,。
具体参见样例。
5 3
3 5 1 2 4
233 666 1 3
555 999 2 3
123 987 233 888
25 5
1 3 0
10 4
2 3 0
-1 -1
3 3 0
提示
${\rm Subtask\ 1(30\ pts)}:\qquad 1 \leq N,T \leq 10^2$
${\rm Subtask\ 2(30\ pts)}:\qquad 1 \leq N,T \leq 10^3$
${\rm Subtask\ 3(40\ pts)}:\qquad 1 \leq N \leq 10^6 \qquad 1 \leq T \leq 10^3$
其余输入的数字均在范围内。