본문 바로가기

Algorithm/Math

(C++) - 백준(BOJ) 1735번 : 분수 합

반응형

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

 

1735번: 분수 합

첫째 줄과 둘째 줄에, 각 분수의 분자와 분모를 뜻하는 두 개의 자연수가 순서대로 주어진다. 입력되는 네 자연수는 모두 30,000 이하이다.

www.acmicpc.net

gcd(최대공약수)를 구하는 문제였습니다.

 

Code

#include <iostream>
using namespace std;
long GCD(long a, long b) {
	if (b>a) return GCD(b, a);
	if (a%b == 0) return b;
	else  return GCD(b, a%b);
}
int main() {
	long up, down, up1, down1, N, M;
	cin >> up >> down >> up1 >> down1;
	N = down1 * up + up1 * down;
	M = down1 * down;
	
	cout << N/GCD(N,M) << ' ' << M/GCD(N,M);
}