問題一覧 > 通常問題

No.2484 Add to Variables

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 38
作問者 : Magentor / テスター : ytqm3
3 ProblemId : 10103 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2023-11-22 22:18:52
F 問題と G 問題は設定が共通しており、制約のみが異なります。

問題文

ここに、長さ NN の数列 AA があります。最初、 AA のすべての値は 00 です。

この数列に対し、以下の 44 種類の操作を行うことを考えます。

  • 何もしない。
  • 整数 k (1kN1)k \ (1 \leq k \leq N-1) を選び、1ik1 \leq i \leq k を満たす全ての整数 ii について、 AiA_i11 を足す。
  • 整数 k (2kN)k \ (2 \leq k \leq N) を選び、kiNk \leq i \leq N を満たす全ての整数 ii について、 AiA_i11 を足す。
  • 1iN1 \leq i \leq N を満たすすべての整数 ii について、 AiA_i11 を足す。

操作をちょうど MM 回行う方法のうち、 A=BA=B となるものの個数を 998244353998244353 で割った余りを求めてください。

ただし、ある整数 ii が存在して ii 回目に 11 が足された数の index の集合が異なる時、またその時に限り操作列が異なるとみなします。

入力

入力は以下の形式で標準入力から与えられる。

NN MM
B1B_1 B2B_2 \ldots BNB_N
  • 入力は全て整数
  • N=4N=4
  • 1M2×1051 \le M \le 2 \times 10^5
  • 0BiM0 \leq B_i \leq M

出力

答えを出力せよ。

サンプル

サンプル1
入力
4 2
1 1 1 0
出力
2

11 回目の操作で A1,A2,A3A_1,A_2,A_311 を足し、22 回目の操作でどの変数にも 11 を足さない方法と、11 回目の操作でどの変数にも 11 を足さず 22 回目の操作で A1,A2,A3A_1,A_2,A_311 を足す方法の 22 通りが考えられます。

サンプル2
入力
4 2
1 1 1 1
出力
8
11 回目の操作で 11 が足されなかった変数に 11 を足したときに限り A1=A2=A3=A4=1A_1=A_2=A_3=A_4=1 を達成することが出来るので、答えは 88 通りです。
サンプル3
入力
4 3
0 3 2 2
出力
0
サンプル4
入力
4 314
202 3 9 22
出力
362672301

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。