ylab 2023. 1. 23. 22:19

https://www.acmicpc.net/problem/1789

 

1789번: 수들의 합

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

www.acmicpc.net

#서로 다른 N개의 자연수의 합이 S라고 한다. 


a= int(input())

i=1
cnt=1
while a>=i:
    a-=i
    i+=1
    cnt+=1

print(cnt-1)

문제 발상이 생각이 안나서 

일단 노트에 케이스를 적어본다. 

key idea 는 최대가 되려면 무조건 작은 수가 포함되어야한다는 것이고

예외사항을 포함하는 패턴을 도출한다.