function my_gcd(n1, n2) {
var a, b, n;
if (n1 === n2) return n1;
else if (n1 > n2) {
a = n1; b = n2;
} else {
a = n2; b = n1;
}
while(b) {
n = a % b;
a = b;
b = n;
}
return a;
}
function solution(numer1, denom1, numer2, denom2) {
var answer = [];
var gcd;
answer[0] = (numer1 * denom2) + (numer2 * denom1);
answer[1] = denom1 * denom2;
gcd = my_gcd(answer[0], answer[1]);
answer[0] = parseInt(answer[0]/gcd);
answer[1] = parseInt(answer[1]/gcd);
return answer;
}
/*
임의의 두 자연수 a, b가 주어졌을때. 둘중 큰 값이 a라고 가정해보겠습니다.
a를 b로 나눈 나머지를 n 이라고 하면 (a%b = n)n이 0일때, b가 최대 공약수(GCD)입니다.
만약 n이 0이 아니라면, a에 b값을 다시 넣고 n를 b에 대입 한 후 다시 위에 step2부터 반복하면 됩니다.
출처: https://blockdmask.tistory.com/53 [개발자 지망생:티스토리]
*/