Rikka는 다음과 같이 정수 수열 u1,u2,…을 만든다. 먼저 xi=(100000005⋅xi−1+20150609)mod998244353으로 x1,x2,…을 구하고, 그다음 ui=⌊xi/100⌋로 둔다.
처음에 좌표평면 위에 n개의 점이 있다. i번째 점의 좌표는 (i,uimod100001)이다. 이후 m개의 연산을 순서대로 수행한다. i번째 연산은 C, R, Q 중 하나의 종류를 가진다.
pi=min{un+2i−1modn,un+2imodn}+1, qi=max{un+2i−1modn,un+2imodn}+1로 정의한다.
- i번째 연산이
C이면, (un+2i−1modn+1)번째 점을 (un+2i−1modn+1,un+2imod100001)로 바꾼다.
- i번째 연산이
R이면, pi≤x≤qi를 만족하는 모든 점 (x,y)를 (x,100000−y)로 바꾼다.
- i번째 연산이
Q이면, 현재 존재하는 점 중 pi≤x≤qi를 만족하는 점들을 대상으로 한다. 주어진 ai, bi, ci에 대해 이 점들의 max{ai⋅x+bi⋅y+ci⋅x⋅y}를 구한다.