最大公因数

#include <bits/stdc++.h>
using namespace std;
int main() {
// 求最大公因数 (穷举法) 
	int a, b;
	cin >> a >> b;
	if (a > b) swap(a, b);
	for (int i = a; i >= 1; i--) {
		if (a % i == 0 && b % i == 0) {
			cout << i << endl;
			break;
		}
	}
	return 0;
}
// 求最大公因数 (辗转相除法)
	int a, b, c;
	cin >> a >> b;
	if (a < b) swap(a, b);
	while (c > 0) {
		a = b;
		b = c;
		c = a % b;
	}
	return 0;
}

最小公倍数

#include <bits/stdc++.h>
using namespace std;

int main() {
	// 求最小公倍数 (暴力穷举的优化,小于a*b的所有公倍数)
	int a, b;
	cin >> a >> b;
	if (a < b) swap(a, b);
	for (int i = b; i <= a * b; i = i + b) {
		if (i % a == 0 && i % b == 0) {
			cout << i << endl;
			break;
		}
	}
	return 0; 
}

🚀️