P1029 [NOIP2001 普及组] 最大公约数和最小公倍数问题(欧几里得)

欧几里得,gcdlcm=xy的应用

#include<cstdio>
#include<iostream>
using namespace std;
int gcd(int a,int b){
	if(b==0) return a;
	return gcd(b,a%b);
}
int cnt;
int main(){
	int x,y;
	scanf("%d%d",&x,&y);
	for(int i=x;i<=y;i++){
		int num=x*y/i;
		if(num*i==x*y&&gcd(num,i)==x) cnt++;
	}
	printf("%d",cnt);
	return 0;
}
上一篇:(扩)欧几里得的一些见解


下一篇:洛谷 P5154 数列游戏