[ 백준 ] 14490 백대열 [ js ]

Ann·2022년 9월 23일
0

Algorithm

목록 보기
31/53

14490 백대열

문제

대열이는 욱제의 친구다.
“야 백대열을 약분하면 뭔지 알아?”
“??”
“십대일이야~ 하하!”
n:m이 주어진다. 욱제를 도와주자. (...)

입력

n과 m이 :을 사이에 두고 주어진다. (1 ≤ n, m ≤ 100,000,000)

출력

두 수를 최대한으로 약분하여 출력한다.

풀이

// let input = require('fs').readFileSync('/dev/stdin').toString().split(':');
let input = `100:10`;
let [num1, num2] = input.split(':').map(n=> parseInt(n));
let getGCD = (num1, num2) => {
    while(num2 > 0){
        let r = num1 % num2;
        num1 = num2;
        num2 = r;
    }
    return num1;
}
let gcd = getGCD(num1,num2);
console.log(`${num1/gcd}:${num2/gcd}`)

유클리드 호제법으로 최대공약수를 구하여 이용하는 문제였다

profile
안녕하세요

0개의 댓글