n은 10,000 이하의 자연수 입니다.
- 접근을 어떻게 할지 전혀 몰랐다.
- 이럴 땐 그냥 완전 탐색..
- 1부터 하나씩 증가하면서 더하고, 이 값이 n보다 커지면 다음 case로 넘어간다
- for문 속의 for문을 이용해도 되지만, while을 이용해서 풀이
- 추가) n//2+1부턴 무조건 불가능하기 때문에 range(1,n//2+2)로 설정하면 시간 복잡도가 더 줄어든다.
def solution(n): cnt = 0 for i in range(1,n+1): now = last = i k = 1 while last <= n:t last = last + (now + k) k += 1 if last == n:
를 참고 해서 풀었기 때문에 생략...