라일락 꽃이 피는 날

[Level 2] 숫자의 표현 본문

코딩테스트/Python

[Level 2] 숫자의 표현

eunki 2021. 10. 8. 12:16
728x90

[문제]

Finn은 요즘 수학 공부에 빠져 있습니다. 수학 공부를 하던 Finn은 자연수 n을 연속한 자연수들로 표현하는 방법이 여러 개라는 사실을 알게 되었습니다. 예를 들어, 15는 다음과 같이 4가지로 표현할 수 있습니다.

  • 1 + 2 + 3 + 4 + 5 = 15
  • 4 + 5 + 6 = 15
  • 7 + 8 = 15
  • 15 = 15

자연수 n이 매개변수로 주어질 때, 연속된 자연수들로 n을 표현하는 방법의 수를 return하는 solution를 완성해주세요.

 

 

[제한사항]

  • n은 10,000 이하의 자연수 입니다.

 

 

 

[코드]

def solution(n):
    cnt = 0
    for i in range(1, n+1):
        sum = 0
        for j in range(i, n+1):
            sum += j
            if sum == n:
                cnt += 1
                break
            elif sum > n:
                break
    
    return cnt
728x90

'코딩테스트 > Python' 카테고리의 다른 글

[Level 2] 올바른 괄호  (0) 2021.10.11
[Level 2] 다음 큰 숫자  (0) 2021.10.11
[Level 2] 최댓값과 최솟값  (0) 2021.10.08
[Level 2] 최솟값 만들기  (0) 2021.10.08
[Level 2] 피보나치 수  (0) 2021.10.08