https://www.acmicpc.net/problem/1735
1735번: 분수 합
첫째 줄과 둘째 줄에, 각 분수의 분자와 분모를 뜻하는 두 개의 자연수가 순서대로 주어진다. 입력되는 네 자연수는 모두 30,000 이하이다.
www.acmicpc.net
function gcd(a, b) {
let tmp = 0;
if (a < b) {
tmp = a;
a = b;
b = tmp;
}
while (b != 0) {
n = a % b;
a = b;
b = n;
}
return a;
}
const input = require("fs")
.readFileSync("ex.txt")
.toString()
.trim()
.split("\n");
const [molecule1, denominator1] = input[0]
.split(" ")
.map((item) => parseInt(item));
const [molecule2, denominator2] = input[1]
.split(" ")
.map((item) => parseInt(item));
let resultMolecule = molecule1 * denominator2 + molecule2 * denominator1;
let resultDenominator = denominator1 * denominator2;
const gcdValue = gcd(resultMolecule, resultDenominator);
while (true) {
if (gcdValue === 1) {
break;
}
if (resultDenominator % gcdValue !== 0 || resultMolecule % gcdValue !== 0) {
break;
}
resultMolecule = resultMolecule / gcdValue;
resultDenominator = resultDenominator / gcdValue;
}
console.log(`${resultMolecule} ${resultDenominator}`);
'알고리즘 문제 풀이' 카테고리의 다른 글
[백준 알고리즘] Python 이상한 곱셈 1225번 (0) | 2023.06.30 |
---|---|
[백준 알고리즘] Python 저항 1076번 (0) | 2023.06.29 |
[백준 알고리즘] javascript 동전 0 11047번 (0) | 2023.01.27 |
[백준 알고리즘] javascript 보물 1026번 (0) | 2023.01.23 |
[백준 알고리즘] javascript N번째 큰 수 2693번 (0) | 2023.01.23 |