Python/online judge
백준 [1789.수들의 합] | Python
구름솜:D
2024. 1. 29. 23:48
728x90
✏️ 문제
https://www.acmicpc.net/problem/1789
1789번: 수들의 합
첫째 줄에 자연수 S(1 ≤ S ≤ 4,294,967,295)가 주어진다.
www.acmicpc.net
✏️ 풀이방법
1. n은 자연수이므로 1부터 시작해서 while문으로 무한루프를 돌리면서 total의 자연수 누적합을 담는다.
2. 누적된 합이 s와 크거나 같을 때 while문을 종료한다.
3. 누적된 합 total이 입력한 s와 같으면 해당 n을 출력하고 그렇지 않으면 자연수n에서 하나 뺀 수를 출력한다.
📌 코드
s = int(input())
n = 1
total = 0
while True:
total += n
if total >= s:
break
n += 1
if total == s:
print(n)
else:
print(n-1)
📌 결과
200 #입력
19 #출력