N개의 정수로 이루어진 수열 a0,a1,...,aN−1이 주어진다.
다음 유형의 쿼리 Q개를 순서대로 처리한다:
0 $i$ $x$ :
- i<∣a∣이면, ai의 바로 앞에 x를 삽입한다.
- i=∣a∣이면, a∣a∣−1의 뒤에 x를 삽입한다.
1 $i$ : ai를 제거한다(남은 원소들은 이어 붙인다).
2 $l$ $r$ : al,al+1,al+2,…,ar−1을 뒤집는다.
3 $l$ $r$ $b$ $c$ : 각 i=l,l+1,l+2,…,r−1에 대해, ai←b×ai+c로 갱신한다.
4 $l$ $r$ : ∑i=lr−1aimod998244353을 출력한다.
제약 조건
- 1≤N,Q≤500000
- 0≤ai<998244353
- 형식
0 $i$ $x$에 대해:
- 0≤i≤(해당 시점의 ∣a∣)
- 0≤x<998244353
- 형식
1 $i$에 대해:
- 0≤i<(해당 시점의 ∣a∣)
- 형식
2 $l$ $r$에 대해:
- 0≤l<r≤(해당 시점의 ∣a∣)
- 형식
3 $l$ $r$ $b$ $c$에 대해:
- 0≤l<r≤(해당 시점의 ∣a∣)
- 0≤b<998244353
- 0≤c<998244353
- 형식
4 $l$ $r$에 대해:
- 0≤l<r≤(해당 시점의 ∣a∣)