atcoder#ARC118F. [ARC118F] Growth Rate

[ARC118F] Growth Rate

配点 : 10001000

問題文

正の整数 MM と、NN 項からなる整数列 A=(A1,A2,,AN)A = (A_1,A_2,\ldots,A_N) が与えられます。N+1N+1 項からなる整数列 X=(X1,X2,,XN+1)X = (X_1,X_2, \ldots, X_{N+1}) であって、次の条件をすべて満たすものの個数を mod998244353\bmod 998244353 で求めてください。

  • 1XiM1\leq X_i\leq M (1iN+11\leq i\leq N+1)
  • AiXiXi+1A_iX_i\leq X_{i+1} (1iN1\leq i\leq N)

制約

  • 1N10001\leq N\leq 1000
  • 1M10181\leq M\leq 10^{18}
  • 1Ai1091\leq A_i\leq 10^9
  • i=1NAiM\prod_{i=1}^N A_i \leq M

入力

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

NN MM

A1A_1 A2A_2 \ldots ANA_N

出力

条件を満たす整数列の個数を mod998244353\bmod 998244353 で出力してください。

2 10
2 3
7

条件を満たす整数列 XX は、以下の 77 個です:

  • (1,2,6)(1, 2, 6), (1,2,7)(1,2,7), (1,2,8)(1,2,8), (1,2,9)(1,2,9), (1,2,10)(1,2,10), (1,3,9)(1,3,9), (1,3,10)(1,3,10)
2 10
3 2
9

条件を満たす整数列 XX は、以下の 99 個です:

  • (1,3,6)(1, 3, 6), (1,3,7)(1, 3, 7), (1,3,8)(1, 3, 8), (1,3,9)(1, 3, 9), (1,3,10)(1, 3, 10), (1,4,8)(1, 4, 8), (1,4,9)(1, 4, 9), (1,4,10)(1, 4, 10), (1,5,10)(1, 5, 10)
7 1000
1 2 3 4 3 2 1
225650129
5 1000000000000000000
1 1 1 1 1
307835847