問題文
長さ N の整数列 A=(A1,A2,…,AN) が与えられます。
整数 x と非負整数 y に対して関数 f(x,y) は以下のように定義されます。
⎩⎨⎧f(x,y)=f(x+a,y−1)+f(x+b,y−1)f(x,y)=Axf(x,y)=0(y=0)(1≤x≤N,y=0)(otherwise)
このとき、f(l,M)+f(l+1,M)+⋯+f(l+N−1,M) の値を求めて下さい。
ただし、答えは非常に大きくなる場合があるので、998244353 で割った余りを求めて下さい。
制約
- 入力される値は全て整数である。
- 1≤N,M≤2×105
- 0≤∣a∣,∣b∣,∣A[i]∣,∣l∣≤109
- a=b
入力
入力は以下の形式で標準入力から与えられる。
出力
答えを一行に出力して、最後に改行せよ。
サンプル
f(1,1)+f(2,1)=f(2,0)+f(0,0)+f(3,0)+f(1,0)=2+0+0+1=3 です。
入力4
7 314 15 9 -2
6 5 3 5 8 9 7