Development/Program Solving

[백준 2292번] 벌집 (feat. NodeJS)

이쥬딩 2021. 1. 6. 02:27
728x90

 

2292번: 벌집

위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌

www.acmicpc.net

범위가 1, 2~7, 8~19, 20~37, 38~61로 증가한다.

공식으로 나타내면 이전값 +  범위카운트 * 6 이다.

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

let input;
const onInput = (value) => (input = Number(value));

const onClose = () => {
    let count = 1;
    let maximum = 1;

    while (maximum < input) {
        maximum += count * 6;
        count++;
    }

    console.log(count);
    process.exit();
};

rl.on("line", onInput).on("close", onClose);

나는 수학 알고리즘에 약한 것 같다 😭

728x90