Algorithm/프로그래머스

[Python] 프로그래머스 Lv2 - 숫자의 표현

떵호 2022. 6. 20. 19:43
728x90

🔗 문제링크

 

코딩테스트 연습 - 숫자의 표현

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

programmers.co.kr

📂 분류

완전탐색

💡 풀이

n이 10,000이하인 수 이기 때문에 완전탐색으로 풀었다.

반복문으로도 해결할 수 있는 문제이지만, 재귀의 약한 것 같아 재귀함수를 사용해서 풀었다.

💻 코드

def recursion(n, i, num):
    if n == num:
        return True

    if n > num:
        return False
    n += i

    return recursion(n, i + 1, num)


def solution(n):
    answer = 0

    for i in range(1,  n + 1):
        if recursion(i, i + 1, n):
            answer += 1

    return answer
728x90