JavaScript/알고리즘

[백준 2292] NodeJS / Javascript 문제풀이

반응형

정답 - 풀이과정

  정답

let input = require("fs")
  .readFileSync(process.platform === 'linux' ? '/dev/stdin' : '../../input.txt')
  .toString()
  .trim()
  .split(" ");

const num = parseInt(input[0]);

let increaseNumber = 1;
let i=1

while(num > i){
  i += increaseNumber*6
  increaseNumber++
}

console.log(increaseNumber)

  리얼 풀이과정

 

우선, 벌집의 규칙을 찾아 보았습니다.

 

1부터 시작해서 원형으로 수가 어떻게 증가하는지를 확인 해 보니,

1 -> 7 -> 19 -> 37

 

순서로 증가하는것을 확인하였습니다.

여기서 더 자세히 규칙을 보면,

 

1부터 0 -> 6 -> 12 -> 18 순서로 증가하는것을 확인할 수 있습니다.

1 + n6 이라는 결론에 도출하였습니다.

그래서 while 문을 이용하여서 n을 증가시키고, 타겟값과 비교하여 출력하는 코드를 작성하엿습니다.

반응형

'JavaScript > 알고리즘' 카테고리의 다른 글

[백준 1712] NodeJS / Javascript 문제풀이  (0) 2021.12.24
알고리즘 스터디 - queue / 큐  (3) 2021.06.04
알고리즘 스터디 - Stack  (0) 2021.05.21