题目描述
给定 N 个质数 P1,P2,…,PN,再给定 N 个非负整数 A1,A2,…,AN,定义 x 如下
x=P1A1⋅P2A2…PNAN
也就是说,x 的质因数分解可以用 P 与 A 来表示。同样的方法,给定 M 个质数 Q1,Q2,…,QM,再给定 M 个非负整数 B1,B2,…,BM,定义 y 如下
y=Q1B1⋅Q2B2…QMBM
记 gcd(i,j) 表示整数 i 与 j 的最大公因数,lcm(i,j) 表示整数 i 与 j 的最小公倍数。
请统计,有多少正整数对 i 与 j,可以满足 lcm(i,j)=x 且 gcd(i,j)=y。由于答案可能很大,输出方案数模 109+7 的余数。
输入格式
- 第一行:单个整数表示 N
- 第二行:N 个素数表示 P1,P2,…,PN
- 第三行:N 个非负整数表示 A1,A2,…,AN
- 第四行:单个整数表示 M
- 第五行:M 个素数表示 Q1,Q2,…,QM
- 第六行:M 个非负整数表示 B1,B2,…,BM
- 保证 Pi 是互不相同的素数
- 保证 Qj 是互不相同的素数
输出格式
2
2 3
2 2
1
3
1
4
样例解释 1
(3,36), (9,12), (12,9), (36,3)
数据范围
- 30% 的数据,1≤N,M≤5,0≤Ai,Bj≤5,2≤Pi,Qj≤11
- 60% 的数据,1≤N,M≤100,0≤Ai,Bj≤100,2≤Pi,Qj≤1000
- 100% 的数据,1≤N,M≤100,000,0≤Ai,Bj≤109,2≤Pi,Qj≤109
来源
改编自 CF1866B Battling with Numbers