[Baekjoon] 1789번 : 수들의 합
1. 문제
https://www.acmicpc.net/problem/1789
- 그리디 문제
// 문제
서로 다른 N개의 자연수의 합이 S라고 한다.
S를 알 때, 자연수 N의 최댓값은 얼마일까?
// 입력
첫째 줄에 자연수 S(1 ≤ S ≤ 4,294,967,295)가 주어진다.
// 출력
첫째 줄에 자연수 N의 최댓값을 출력한다.
// 예제 입력 1
200
// 예제 출력 1
19
2. 핵심 아이디어
- 1부터 차례대로 더해 s보다 커지면 그 개수에서 1을 뺌
3. Python 문제풀이
import sys
input = sys.stdin.readline
s = int(input())
n = 1
while n * (n + 1) / 2 <= s :
n += 1
print(n - 1)
4. Java 문제풀이
댓글남기기