본문 바로가기

코딩테스트/BOJ

[백준/파이썬] 1789번: 수들의 합 (Python)

문제

www.acmicpc.net/problem/1789

 

1789번: 수들의 합

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

www.acmicpc.net

 

풀이

s = int(input())
N = 0
result = 0
for i in range(1,s+1):
    result += i
    N += 1
    if(result > s):
        N -= 1
        break;
print(N)

 

정리

서로다른 자연수 N개의 합이 S이다. S까지 1을 순차적으로 더해가다가 그 값이 S보다 커지면 N-1이 문제의 정답이 된다.