atcoder#ABC256F. [ABC256F] Cumulative Cumulative Cumulative Sum

[ABC256F] Cumulative Cumulative Cumulative Sum

题目描述

N,Q N,Q および A=(A1,,AN) A=(A_1,\ldots,A_N) が与えられます。
以下のクエリを Q Q 個処理してください。クエリは次の 2 2 種類のいずれかです。

  • 1 x v : Ax A_x v v に更新する。
  • 2 x : Bi=j=1iAj B_i=\sum_{j=1}^{i}A_j Ci=j=1iBj C_i=\sum_{j=1}^{i}B_j Di=j=1iCj D_i=\sum_{j=1}^{i}C_j としたときの Dx D_x mod 998244353 \bmod\ 998244353 で出力する。

输入格式

入力は以下の形式で標準入力から与えられる。ここで  queryi {\rm\ query}_i i i 番目に処理するクエリである。

N N Q Q A1 A_1 A2 A_2 \ldots AN A_N  query1 {\rm\ query}_1  query2 {\rm\ query}_2 \vdots  queryQ {\rm\ query}_Q

各クエリは以下の 2 2 種類のいずれかの形式で与えられる。

1 1 x x v v

2 2 x x

输出格式

クエリへの答えを改行区切りで出力せよ。

题目大意

已知一个长度为 NN 的序列 AA,你需要进行QQ 次操作,它们是以下两种之一:

    1. 1 x v:将 AxA_x 改为 vv
    1. 2 x:令 $B_i=\sum_{j=1}^iA_j,C_i=\sum_{j=1}^iB_j,D_i=\sum_{j=1}^iC_j$,求出 DxD_x998244353998244353 取模的结果。
3 3
1 2 3
2 3
1 2 0
2 3
15
9
2 1
998244353 998244353
2 1
0

提示

制約

  • 1  N  2×105 1\ \leq\ N\ \leq\ 2\times10^5
  • 1  Q  2×105 1\ \leq\ Q\ \leq\ 2\times10^5
  • 0  Ai  109 0\ \leq\ A_i\ \leq\ 10^9
  • 1  x  N 1\ \leq\ x\ \leq\ N
  • 0  v  109 0\ \leq\ v\ \leq\ 10^9
  • 入力に含まれる値は全て整数である

Sample Explanation 1

1 1 番目のクエリの時点で A=(1,2,3) A=(1,2,3) であるため、B=(1,3,6) B=(1,3,6) C=(1,4,10) C=(1,4,10) D=(1,5,15) D=(1,5,15) となり、D3=15 D_3=15 です。 3 3 番目のクエリの時点で A=(1,0,3) A=(1,0,3) であるため、B=(1,1,4) B=(1,1,4) C=(1,2,6) C=(1,2,6) D=(1,3,9) D=(1,3,9) となり、D3=9 D_3=9 です。