[백준] 1789 수들의 합 Node.js (Greedy)

Janet·2023년 6월 26일
0

Algorithm

목록 보기
233/314

문제

서로 다른 N개의 자연수의 합이 S라고 한다. S를 알 때, 자연수 N의 최댓값은 얼마일까?

입력

첫째 줄에 자연수 S(1 ≤ S ≤ 4,294,967,295)가 주어진다.

출력

첫째 줄에 자연수 N의 최댓값을 출력한다.

예제 입력 1

200

예제 출력 1

19

문제풀이

const filePath = process.platform == 'linux' ? '/dev/stdin' : './input.txt';
const S = Number(require('fs').readFileSync(filePath).toString());
let sum = 0;
let N = 0;

while (sum < S) {
  N++;
  sum += N;
  if (sum > S) N--;
}
console.log(N);
profile
😸

0개의 댓글