
区间仿射点查(Range Affine Point Get)
问题描述
给定一个长度为 N 的整数序列 a0,a1,…,aN−1。请按顺序处理以下 Q 个查询:
0 l r b c:对每个 i=l,l+1,…,r−1,执行 ai←b×ai+c。
1 i:输出 aimod998244353。
约束条件
- 1≤N,Q≤5×105
- 0≤ai,c<998244353
- 1≤b<998244353
- 0≤l<r≤N
- 0≤i<N
输入格式
N Q
a0 ⋯ aN−1
Query0
Query1
:
QueryQ−1
5 12
1 2 3 4 5
0 2 4 100 101
1 0
1 1
1 2
1 3
1 4
0 1 3 102 103
1 0
1 1
1 2
1 3
1 4
1
2
401
501
5
1
307
41005
501
5