자연수 n을 연속한 자연수들의 합으로 표현할 수 있는 방법의 가짓수를 구하는 문제이다.
연속된 자연수라는 조건을 보지 못하고 많이 헤매었다.
n보다 작은 수부터 차례대로 올라오면서 하나씩 시작해보았다.def solution(n): answer = 0 for i in range(1, n+1) : a = 0 for j in range(i,n+1) : a += j if a == n : answer += 1 break return answer
1부터 시작하지 않으면 0부터 시작하는 경우의 수가 한가지 추가되어서 오답이 나온다.
결과는
효율성이 없다.
def solution(n): answer = 0 for i in range(1, n+1) : a = 0 for j in range(i,n+1) : a += j if a == n : answer += 1 break elif a > n : break return answer
다른 조건을 추가해서 n을 넘어버리면 멈추게 하였다.
다시 결과는 ㅠㅠ
다행이다..