출처 : https://www.acmicpc.net/problem/2609
2609번: 최대공약수와 최소공배수
첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다.
www.acmicpc.net
고려사항
- 유클리드호제법으로 최대공약수 구하기
- 최소공배수 = a * b / gcd(a, b)
#include <iostream> using namespace std; int main() { int a, b, tmp, gcd, lcm; cin>>a>>b; lcm = a * b; if(a < b){ tmp = a; a = b; b = tmp; } while(b > 0){ tmp = b; b = a % b; a = tmp; } gcd = a; lcm /= gcd; cout<<gcd<<"\n"; cout<<lcm<<"\n"; return 0; }