求最小公倍数和最大公约数

#include<bits/stdc++.h>

using namespace std;

// 辗转相除法求最大公约数 
int gcd(int a,int b) {
	int maxx = max(a,b);
	int minn = min(a,b);
	
	if(maxx%minn == 0) {
		return minn;
	}
	return gcd(minn,maxx%minn);
}

// 利用最大公约数求最小公倍数 
int lcm(int a,int b) {
	return a*b / gcd(a,b);	
}

int main(){
	cout << gcd(12,18) << endl;
	cout << lcm(12,18) << endl;
	return 0;
}

求最小公倍数和最大公约数

上一篇:洛谷 P4137 Rmq Problem / mex(主席树)


下一篇:SMZX十日游(第二阶段RMQ)RMQ学习笔记