본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다
자바스크립트 코드
// 유클리드 호제법으로 최대공약수 구하기
const getGCD = (n, m) => {
if (n % m === 0) {
return m;
} else {
return getGCD(m, n % m);
}
}
// 두 수의 곱을 최대 공약수로 나누어, 최소공배수 구하기
const getLCM = (n, m) => n * m / getGCD(n, m);
const solution = (denum1, num1, denum2, num2) => {
const numLCM = getLCM(num1, num2);
const numSum = (denum1 * (numLCM / num1)) + (denum2 * (numLCM / num2));
const answerGCD = getGCD(numLCM, numSum);
return [numSum / answerGCD, numLCM / answerGCD];
}
Reference
'programming study > Algorithm' 카테고리의 다른 글
[프로그래머스] 연속된 수의 합 - JavaScript 풀이 (0) | 2022.11.06 |
---|---|
[프로그래머스] OX퀴즈 - JavaScript 풀이 (0) | 2022.11.05 |
[프로그래머스] 최빈값 구하기 - JavaScript 풀이 (0) | 2022.11.03 |
[프로그래머스] 저주의 숫자 3 - JavaScript 풀이 (0) | 2022.11.03 |
[프로그래머스] 팩토리얼 - JavaScript 풀이 (0) | 2022.11.02 |