첫 번째 분수의 분자와 분모를 뜻하는 numer1, denom1, 두 번째 분수의 분자와 분모를 뜻하는 numer2, denom2 가 매개변수로 주어집니다. 두 분수를 더한 값을 기약 분수로 나타냈을 때 분자와 분모를 순서대로 담은 배열을 return 하도록 solution 함수를 완성해보세요.
2. 제한사항
● 0 <numer1, denom1, numer2, denom2 < 1,000
3. 입출력 예시
numer1
denom1
numer2
denom2
result
1
2
3
4
[5,4]
9
2
1
3
[29,6]
4. 나의 풀이
public int[] solution(int numer1, int denom1, int numer2, int denom2)
{
//리턴해야하는 배열의 방 수 2개.
int[] answer = new int[2];
int min = MaxMin(denom1, denom2);
int max = (denom1 * denom2) / min;
answer[1] = max;
int num1 = max / denom1;
int num2 = max / denom2;
numer1 = num1 * numer1;
numer2 = num2 * numer2;
answer[0] = numer1 + numer2;
return answer;
}
//최대공약수, 최소공배수를 구해주는 함수
public int MaxMin(int n, int m)
{
if (m == 0) return n;
else return MaxMin(m, n % m);
}