A.最大公约数和最小公倍数问题 | |||||
|
|||||
Description | |||||
输入二个正整数x0,y0(2≤x0≤100000,2≤y0≤1000000),求出满足下列条件的P、Q的个数。 条件1:P、Q是正整数 |
|||||
Input | |||||
两个正整数 | |||||
Output | |||||
满足条件的所有可能的两个正整数的个数 | |||||
Sample Input | |||||
3 60 |
|||||
Sample Output | |||||
4 |
|||||
Hint | |||||
说明:(不用输出)此时的 P Q分别为: 3 60 所以,满足条件的所有可能的两个正整数的个数共4种 |
import java.util.*;
public class Main {
static int max(int a,int b)
{
while(b!=0)
{
int o = a%b;
a = b;
b = o;
}
return a;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
int x,y;
while(input.hasNextInt())
{
x = input.nextInt();
y = input.nextInt();
int v = x*y;
int s = (int)Math.sqrt(v);
int n = 0;
for(int i=x; i<=s; i++)
{
if((v%i==0)&&(max(v/i,i)==x))
{
n++;
}
}
n = n*2;
System.out.printf("%d\n",n);
}
}
}