코드
def solution(n):
stack = [1]
answer = 0
sum_stack = 1
i = 2
while i <= n + 1:
if sum_stack == n:
answer += 1
sum_stack -= stack.pop(0)
if sum_stack < n:
stack.append(i)
sum_stack += i
i += 1
else:
sum_stack -= stack.pop(0)
return answer
이 코드는 도저히 원리를 모르겠다.
온갖 추측만 난무할 뿐, 정수론을 봐야하는건가..
def solution(n):
return len([i for i in range(1,n+1,2) if n % i is 0])