본문 바로가기
알고리즘/프로그래머스 level 1,2

[파이썬🐍] 프로그래머스 : 숫자의 표현

by 코딩개미뚠뚠 2021. 5. 22.
반응형

 

def solution(n):
    hap,cnt = 0,0
    for i in range(1,n):
        hap += i
        for j in range(i+1,n):
            if hap == n:
                cnt += 1
                break
            elif hap+j <= n:
                hap += j
            else:
                break
        hap = 0               #초기화 시켜주기
    return cnt+1              #자기자신인 경우 하나 더해주기 

<내 풀이>

해결방법은 1부터 n까지 처음시작점은 i으로 정해주고 

다음 for문을 돌면서 연속되는 수로 더해나갈때 n이 되느냐 안되느냐를 따지는 것이다.

 

ex> 시작점이 1, n이 15일 때, 1+2+3+4+5=15 이기에 가능

      시작점이 2, n이 15일 때, 2+3+4+5<15, 2+3+4+5+6>15이기에 불가능

 

반응형

댓글