[프로그래머스] Lv.2 숫자의 표현 | Python - velog

민민2·2022년 10월 27일
1

숫자의 표현

문제 설명

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):
    answer = 0
    for i in range(1,n+1):
        sum=0
        for j in range(i,n+2):
            if sum>n:
                break
            elif sum==n:
                answer+=1
                break
            elif sum<=n:
                sum+=j
        print(sum)    
    return answer

이 문제는 쉬웠다.

n값이 주어지고
연속된 숫자로 그 값을 만들 수 있으면
answer에 1을 더해주고 return 하면 된다.

이 문제는 다른 사람의 풀이가 너무 경이로웠다...

다른 사람의 풀이

규칙을 알고 한 줄로 끝내버렸다.

이걸 보니 난 아직 멀었구나라는 생각이...

profile
스터디 노트

1개의 댓글

comment-user-thumbnail
2022년 11월 6일

하잉

답글 달기