Algorithm/Python

백준 1789 수들의 합 [Python]

beomzh 2023. 9. 15. 16:38
728x90
반응형

문제

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

입력

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

출력

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

예제 입력 1 복사

200

예제 출력 1 복사

19

 

풀이

# 자연수의 합 S 입력
S=int(input())
sum=0 # 숫자 합
result=0 # 서로 다른 N개의 자연수 갯수

# 1부터 S값 까지 반복
for i in range(1,S+1):
  sum+=i
  result+=1

  # 숫자의 합이 입력값을 넘은 바로 직전의 값
  if sum>S:
    result-=1
    break
    
print(result)
728x90
반응형

'Algorithm > Python' 카테고리의 다른 글

백준 1546 평균 [Python]  (0) 2023.09.15
백준 9498 시험성적 [Python]  (0) 2023.09.15
백준 11021번 A+B [Python]  (0) 2023.09.15
백준 3046 R2 [Python]  (0) 2023.09.12
백준 2588 곱셉 [Python]  (0) 2023.09.12