0
点赞
收藏
分享

微信扫一扫

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

JamFF 2022-02-05 阅读 43
c++

题目:OpenJudge - 8784:最大公约数和最小公倍数问题

代码:理解题意,得到等式i*j=x*y,i和j的最大公约数为x,x<=i,j<=y。

#include<iostream>
using namespace std;
int gcd(int a,int b){
	int t;
	while(b){
		t=a%b;
		a=b;
		b=t;
	}
	return a;
}
int main()
{
	int x,y;
	cin>>x>>y;
	int ans=0,i;
	for(i=x;i<=y;i++){
		int j=x*y/i;
		if(gcd(i,j)==x&&i*j==x*y) ans++;
	}
	cout<<ans;
	return 0;
}
举报

相关推荐

0 条评论