Lennon FE

[백준 14490번] 백대열 - 자바스크립트(nodejs) 본문

🔥 Algorithm/Baekjoon

[백준 14490번] 백대열 - 자바스크립트(nodejs)

Lennon 2022. 4. 5. 03:21
728x90
반응형

https://www.acmicpc.net/problem/14490

 

14490번: 백대열

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

www.acmicpc.net

const readline = require('readline');

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});
let input;
rl.on('line', function (line) {
  input = line.split(':').map(Number);
  rl.close();
}).on('close', function () {
  console.log(solution(input));
});

function solution(num) {
  let cnt = 2;
  while (true) {
    if (cnt > Math.min(...num)) {
      break;
    }
    if (num[0] % cnt === 0 && num[1] % cnt === 0) {
      num[0] /= cnt;
      num[1] /= cnt;
    } else {
      cnt++;
    }
  }

  return `${num[0]}:${num[1]}`;
}

처음엔 값에 대해 2로 나누고 안되면 1씩 늘려서 나누다가, 값의 최소값보다 나누는 값이 커지면 끝내고 리턴하면 끝!

728x90
반응형
Comments