유클리드 호제법을 이용해서 두 수의 최대 공약수를 구한뒤
각 수를 나눠주면 되는 문제이다
유클리드 호제법의 사용법을 묻는 문제였다
https://www.acmicpc.net/problem/14490
let input = [];
const readline = require("readline").createInterface({
input: process.stdin,
output: process.stdout,
});
readline.on("line", (line) => {
input.push(line);
});
readline.on("close", () => {
solution(input);
process.exit();
});
const solution = (inp) => {
let [n, m] = inp[0].split(":").map((el) => Number(el));
let gcd = (a, b) => {
while (b > 0) {
let r = a % b;
a = b;
b = r;
}
return a;
};
let num = gcd(n, m);
console.log(`${Number(n / num)}:${Number(m / num)}`);
};
'개발 노트 > 백준, 프로그래머스 풀이' 카테고리의 다른 글
[백준 11507/javascript] 카드셋트 (0) | 2022.09.15 |
---|---|
[백준 17203/javascript] ∑|ΔEasyMAX| (0) | 2022.09.14 |
[백준 1822/javascript] 차집합 (0) | 2022.09.12 |
[백준 15233/javascript] Final Score (0) | 2022.09.11 |
[백준 25192/javascript] 인사성 밝은 곰곰이 (0) | 2022.09.10 |
댓글