# 분수의 덧셈

## **문제**

첫 번째 분수의 분자와 분모를 뜻하는 `numer1`, `denom1`, 두 번째 분수의 분자와 분모를 뜻하는 `numer2`, `denom2`가 매개변수로 주어집니다. 두 분수를 더한 값을 기약 분수로 나타냈을 때 분자와 분모를 순서대로 담은 배열을 return 하도록 solution 함수를 완성해보세요.

**제한사항**

* 0 <`numer1`, `denom1`, `numer2`, `denom2` < 1,000

**입출력 예**

| numer1 | denom1 | numer2 | denom2 | result   |
| ------ | ------ | ------ | ------ | -------- |
| 1      | 2      | 3      | 4      | \[5, 4]  |
| 9      | 2      | 1      | 3      | \[29, 6] |

**입출력 예 설명**

입출력 #1

* 1 / 2 + 3 / 4 = 5 / 4입니다. 따라서 \[5, 4]를 return 합니다.

입출력 #2

* 9 / 2 + 1 / 3 = 29 / 6입니다. 따라서 \[29, 6]을 return 합니다.

## 코드

```javascript
function solution(numer1, denom1, numer2, denom2) {
    const gcd = (a,b) => a % b === 0 ? b: gcd(b, a%b); // 최대공약수
    const lcm = (a,b) => a * b / gcd (a,b); // 최소공배수

    const denom3 = lcm(denom1, denom2);
    const numer3 = numer1*(denom3/denom1) + numer2*(denom3/denom2)
    
    return [numer3/gcd(denom3, numer3), denom3/gcd(denom3, numer3)];
}
```
