BOJ[2292] - 벌집 by JavaScript
벌집
문제
언어
- JavaScript
문제 풀이 step 1
- 처음 문제를 봤을 때 어떻게 구해야 할지 너무 큰 고민이 되었습니다. 그 고민은 어떻게 경로를 결정해야 할까 라는 의문으로부터 나오는 것이었습니다.
- 하지만 문제에서 원하는 답은 경로가 아닌 목적지까지 가는 데 지나는 방의 개수였습니다.
- 즉, 중간 과정에서 어떻게 목적지에 가는지는 중요하지 않습니다.
- 그러므로 저희는 그저 벌집을 1번 방에서 한 단계씩 키워가면서 한 단계마다 커버하는 범위 안에 주어진 N이 있는지 검사만 해주면 됩니다.
소스 코드
const input = require("fs").readFileSync("/dev/stdin").toString().split("\n");
const solution = (input) => {
const N = parseInt(input[0]);
let ans = 1;
let before = 1;
let end = 1;
while (!(before <= N && N <= end)) {
before = end + 1;
end = before + ans * 6 - 1;
ans++;
}
return ans;
};
console.log(solution(input));