#3580. Product

0

Product

Product

题目描述

我们有 NN 个袋子。
第 ii 个袋子包含 LiL_i 个球。袋子 ii 中的第 jj 个球 (1≤j≤Li)(1\leq j\leq L_i) 上写着正整数 ai,ja_{i,j}。 我们将从每个袋子中取出一个球。
有多少种取球的方法使得被取出球上写的数字的乘积为 XX? 在这里,我们将所有球区分开,即使它们上面写的是相同的数字。

输入格式

输入从标准输入按以下格式给出: 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
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≥2N \geq 2 Li≥2L_i \geq 2 袋子中球数的乘积至多为 10510^5:∏i=1NLi≤105\displaystyle\prod_{i=1}^{N}L_i \leq 10^5。 1≤ai,j≤1091 \leq a_{i,j} \leq 10^9 1≤X≤10181 \leq X \leq 10^{18} 输入中的所有值均为整数。当在袋子 11 中选择第 33 个球且在袋子 22 中选择第 11 个球时,我们有 a1,3×a2,1=4×10=40a_{1,3} \times a_{2,1} = 4 \times 10 = 40。
当在袋子 11 中选择第 22 个球且在袋子 22 中选择第 22 个球时,我们有 a1,2×a2,2=8×5=40a_{1,2} \times a_{2,2} = 8 \times 5 = 40。
没有其他方法使乘积为 4040,所以答案是 22。
请注意我们将所有球区分开,即使它们上面写的是相同的数字。
也可能没有任何方法使乘积为 XX。

标签: AtCoder|abc233C

来源

AtCoder|abc233C