안녕하세요. 오늘은 최대공약수를 구할 거예요.

문제

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

아이디어

유클리드 호제법을 사용해서 gcd값을 구한 다음에 나누어서 출력해주면 됩니다.

소스코드

#include <iostream>
#include <algorithm>
#define ll long long
using namespace std;

ll gcd(ll a, ll b) { return ((b) ? gcd(b, a % b) : a); }

int main(void)
{
	ios_base::sync_with_stdio(false); cin.tie(NULL);
	ll T, a, b;
	cin >> T;
	while (T--)
	{
		cin >> a >> b;
		cout << a / gcd(a, b) << ' ' << b / gcd(a, b) << "\n";
	}
}


감사합니다.

0개의 댓글