문제
풀이
유클리드 호제법을 사용해 최대 공약수와 최소 공배수를 구하였다.
#include <iostream>
using namespace std;
int gcd(int a, int b) {
if (a % b == 0) return b;
else return gcd(b, a % b);
}
int main() {
int n, m;
int gt, lt;
cin >> n >> m;
if (n >= m) {
gt = n;
lt = m;
}
else {
gt = m;
lt = n;
}
cout << gcd(gt, lt) << "\n" << (n * m) / gcd(gt, lt);
return 0;
}
'백준 > 기타' 카테고리의 다른 글
11050번: 이항 계수 1 [C++] (0) | 2023.04.06 |
---|---|
2775번: 부녀회장이 될테야 [C++] (0) | 2023.04.06 |
1259번: 팰린드롬수 [C++] (0) | 2023.04.06 |
15829번: Hashing [C++] (0) | 2023.04.06 |
4153번: 직각삼각형 [C++] (0) | 2023.04.06 |