gcd问题怎么解?
题目描述 两个长度为n(n<=1e5)数组a,b,
对于每个i,输出gcd(a[1]*b[i],a[2]*b[i],...,a[n]*b[i]);
输入描述:
第一行输入n
第二行输入连续的n个数字,为a数组
第三行输入连续的n个数字,为b数组
(n<=1e5,1<=ai,bi<=1e9)
输出描述:
输出n行,每行一个数字
示例1
输入
复制
3
6 10 12
3 10 5
输出
复制
6
20
10
备注:
gcd是最大公因子,指两个或多个整数共有约数中最大的一个。eg:gcd(21,36)=3
gcd的java求法:
static int gcd(int x,int y){
if(y==0)return x;
return gcd(y,x%y);
}