kakasoo

[node.js] 숫자 ( 백준 10093번 ) 본문

프로그래밍/알고리즘 풀이

[node.js] 숫자 ( 백준 10093번 )

카카수(kakasoo) 2021. 4. 11. 13:56
반응형
const readline = require("readline");

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout,
});

rl.on("line", (line) => {
    main(line);
    process.exit();
});

/**
 *
 * @param {string} line
 */
const main = (line) => {
    let [A, B] = line.split(" ").map(BigInt);
    if (A > B) {
        let temp = A;
        A = B;
        B = temp;
    }

    if (A === B || A + BigInt(1) === B) {
        console.log(0);
        return;
    }

    let answer = "";
    for (let i = 1; i < B - A - BigInt(1); i++) {
        answer += `${A + BigInt(i)} `;
    }
    answer += `${B - BigInt(1)}`;

    console.log(String(B - A - BigInt(1)));
    console.log(answer);
};

이게 정답률이 23%일 이유가 없는데... 코드가 더럽긴 하지만 간단하게 풀 수 있는 문제다.
BigInt는 Cpp에서의 long long int와 같을 것이다.
아마 다른 사람들이 틀린 이유는, 숫자가 같은 경우 또는 숫자가 1 차이가 날 경우의 예외를 생각 못했거나,
아니면 A가 B보다 클 경우를 생각 못했기 때문일 것이다.
이 문제에서는 B가 A보다 크다는 전제가 없다.

반응형