問題一覧 > 通常問題

No.2580 Hyperinflation

レベル : / 実行時間制限 : 1ケース 4.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 14
作問者 : akakimidoriakakimidori / テスター : noshi91noshi91
3 ProblemId : 8975 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2023-03-29 03:05:09

問題文

長さ $N-1$ の整数列 $A = (A_1, \ldots, A_{N - 1})$ が与えられます。

長さ $N$ の整数列 $B = (B_0, B_1, \ldots, B_{N - 1})$ を $B_0 = 1, B_i = A_iB_{i - 1} (1 \leq i < N)$ と定義します。

整数 $M$ が与えられるので以下の式を満たすような長さ $N$ の非負整数列 $C = (C_0, C_1, \ldots, C_{N - 1})$ の個数を求めてください。 $$ \displaystyle \sum_{i = 0}^{N-1} B_i C_i = M $$ 答えは非常に大きくなりうるので $998244353$ で割った余りを求めてください。

入力

$N$
$A_1\ \cdots\ A_{N - 1}$
$M$

  • $1 \leq N \leq 2000$
  • $2 \leq A_i \leq 2000 (1 \leq i < N)$
  • $1 \leq M < 10^{7000}$
  • 入力は全て整数

出力

答えを $998244353$ で割ったあまりを出力してください。最後に改行してください。

サンプル

サンプル1
入力
3
2 2
5
出力
4

$B = (1, 2, 4)$ となります。条件を満たす $C$ は $(1, 0, 1), (1, 2, 0), (3, 1, 0), (5, 0, 0)$ の $4$ 通りあります。

サンプル2
入力
1

13
出力
1

空の行が含まれうることに注意してください

サンプル3
入力
7
6 2 8 5 8 2
866311
出力
770044952

$998244353$ で割ったあまりを出力してください。

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