atcoder#ABC233C. [ABC233C] Product

[ABC233C] Product

配点 : 300300

問題文

NN 個の袋があります。 袋 ii には LiL_i 個のボールが入っていて、袋 iij(1jLi)j(1\leq j\leq L_i) 番目のボールには正の整数 ai,ja_{i,j} が書かれています。

それぞれの袋から 11 つずつボールを取り出します。 取り出したボールに書かれた数の総積が XX になるような取り出し方は何通りありますか?

ただし、書かれた数が同じであっても全てのボールは区別します。

制約

  • N2N \geq 2
  • Li2L_i \geq 2
  • 袋に入っているボールの個数の総積は 10510^5 を超えない。すなわち、i=1NLi105\displaystyle\prod_{i=1}^{N}L_i \leq 10^5
  • 1ai,j1091 \leq a_{i,j} \leq 10^9
  • 1X10181 \leq X \leq 10^{18}
  • 入力に含まれる値は全て整数である。

入力

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

NN XX

L1L_1 a1,1a_{1,1} a1,2a_{1,2} \ldots a1,L1a_{1,L_1}

L2L_2 a2,1a_{2,1} a2,2a_{2,2} \ldots a2,L2a_{2,L_2}

\vdots

LNL_N aN,1a_{N,1} aN,2a_{N,2} \ldots aN,LNa_{N,L_N}

出力

答えを出力せよ。

2 40
3 1 8 4
2 10 5
2

1133 番目のボールと袋 2211 番目のボールを選ぶと、a1,3×a2,1=4×10=40a_{1,3} \times a_{2,1} = 4 \times 10 = 40 となります。 袋 1122 番目のボールと袋 2222 番目のボールを選ぶと、a1,2×a2,2=8×5=40a_{1,2} \times a_{2,2} = 8 \times 5 = 40 となります。 これ以外に総積が 4040 になる取り出し方は存在しないので、答えは 22 です。

3 200
3 10 10 10
3 10 10 10
5 2 2 2 2 2
45

書かれた数が同じであっても全てのボールは区別することに注意してください。

3 1000000000000000000
2 1000000000 1000000000
2 1000000000 1000000000
2 1000000000 1000000000
0

総積が XX になる取り出し方が 11 つも存在しないこともあります。