您的位置:首页 > 其它

最大公约数和最小公倍数问题

2018-04-01 22:46 141 查看
A.最大公约数和最小公倍数问题
Time Limit: 1000 MSMemory Limit: 32768 K
Total Submit: 26 (23 users)Total Accepted: 23 (23 users)Special Judge: No
Description
输入二个正整数x0,y0(2≤x0≤100000,2≤y0≤1000000),求出满足下列条件的P、Q的个数。       条件1:P、Q是正整数       
条件2:要求P、Q以x0为最大公约数,以y0为最小公倍数。       
试求,满足条件的所有可能的两个正整数的个数。
Input
两个正整数
Output
满足条件的所有可能的两个正整数的个数
Sample Input
3 60
Sample Output
4
Hint
说明:(不用输出)此时的  P Q分别为: 3  60
           15 12
           12 15
           60 3所以,满足条件的所有可能的两个正整数的个数共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 = i
4000
nput.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);
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: