문제 설명
첫 번째 분수의 분자와 분모를 뜻하는 denum1, num1, 두 번째 분수의 분자와 분모를 뜻하는 denum2, num2가 매개변수로 주어집니다. 두 분수를 더한 값을 기약 분수로 나타냈을 때 분자와 분모를 순서대로 담은 배열을 return 하도록 solution 함수를 완성해보세요.
내가 작성한 코드
import java.math.BigInteger;
class Solution {
public int[] solution(int denum1, int num1, int denum2, int num2) {
int num= num1*num2;
int denum=denum1*num2+denum2*num1;
int gcd=gcd(denum,num);
int[] answer = {denum/gcd,num/gcd};
return answer;
}
private static int gcd(int a, int b) {
if (b == 0){
return a;
}
return gcd(b, a % b);
}
}
알아야 할 개념 1 : 유클리드 호제법
참고 블로그 : https://st-lab.tistory.com/154
[백준] 2609번 : 최대공약수와 최소공배수 - JAVA [자바]
www.acmicpc.net/problem/2609 2609번: 최대공약수와 최소공배수 첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다. www.acmicpc.net 문제 알
st-lab.tistory.com
참고 블로그2 : https://tech.lonpeach.com/2017/11/12/Euclidean-algorithm/
유클리드 호제법이란? | Lonpeach Tech
개념
tech.lonpeach.com
'[Java] 자바' 카테고리의 다른 글
| [JAVA] 클래스, 객체, 인스턴스 (0) | 2024.06.25 |
|---|---|
| [JAVA] String 클래스 (0) | 2024.06.21 |
| [JAVA][자바] 객체지향 프로그래밍 (0) | 2022.12.01 |
| [자바][JAVA] 배열(Array)과 리스트(List)에 대하여 (1) | 2022.12.01 |
| [JAVA]프로그래머스 - 두 수의 나눗셈 (2) | 2022.10.11 |