atcoder#ABC233C. [ABC233C] Product

[ABC233C] Product

题目描述

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

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

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

输入格式

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

N N X X L1 L_1 a1,1 a_{1,1} a1,2 a_{1,2} \ldots a1,L1 a_{1,L_1} L2 L_2 a2,1 a_{2,1} a2,2 a_{2,2} \ldots a2,L2 a_{2,L_2} \vdots LN L_N aN,1 a_{N,1} aN,2 a_{N,2} \ldots aN,LN a_{N,L_N}

输出格式

答えを出力せよ。

题目大意

nn 个袋子,第 ii 个袋子里装着 lil_i 个小球,其中第 jj 个小球上写的数是 ai,ja_{i,j} 。现在从每个袋子中各取出 11 个小球,问使所有取出的小球的乘积为 xx 的取球方案有多少种?请注意,即使有若干个小球上写的数字是相同的,它们本质上也是不一样的。因此,它们算不同的取法。

2 40
3 1 8 4
2 10 5
2
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

提示

制約

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

Sample Explanation 1

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

Sample Explanation 2

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

Sample Explanation 3

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