kakasoo

[node.js] A -> B ( 백준 16953번 ) 본문

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

[node.js] A -> B ( 백준 16953번 )

카카수(kakasoo) 2021. 3. 26. 17:24
반응형
const readline = require("readline");

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

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

const dfs = (cur, max, value) => {
    if (cur === max) {
        console.log(value);
        process.exit();
    }

    if (cur * 2 <= max) {
        dfs(cur * 2, max, value + 1);
    }
    if (cur + "1" <= max) {
        dfs(Number(cur + "1"), max, value + 1);
    }
};

const main = (line) => {
    const numbers = line.split(" ").map(Number);
    dfs(numbers[0], numbers[1], 1);
    console.log(-1);
};

그래프 문제였다. 그렇게 어려운 건 아닌데, 배열을 만들고 풀려다가 메모리 초과가 나왔다.
사실 배열의 크기를 그렇게 크게 할 수 없다는 건 당연한건데도, 아직도 문제를 잘 안읽고 넘어가서 실수하고 있다...
지금처럼 현재 값을 저장하면서 이동하면 된다.

반응형