Algorithm/BOJ

백준 2609번 C++

poopooreum 2023. 8. 10. 08:03
반응형
백준 2609번 최대공약수와 최소공배수

https://www.acmicpc.net/problem/2609

2609번: 최대공약수와 최소공배수

첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다.

www.acmicpc.net



정답 코드

#include<iostream>
using namespace std;
int find(int a, int b);
int main() {
	int a, b;
		cin >> a >> b;
		int c = find(a, b);
		cout << c << "\n" << (a * b) / c;
	
}
int find(int a, int b) {
	if (a < b)
		swap(a, b);
	while (b != 0) {
		int res = a % b;
		a = b;
		b = res;
	}
	return a;
}


문제 풀이

최대공약수는 유클리드 호제법으로, 최소공배수는
두 수의 곱을 최대공약수로 나눠주면 됩니다.

반응형